Прежде всего, создание приложения Windows Form из раздела CLR в новом окне проекта с именем .NET или что-то еще? Я просто хочу знать, чтобы я мог искать вещи на нем лучше.
Как отличить отдельные кнопки, если я дал им одну и ту же функцию щелчка?
this->button1->Click += gcnew System::EventHandler(this, &test::button1_Click);
this->button2->Click += gcnew System::EventHandler(this, &test::button1_Click);
private: System::Void button1_Click(System::Object^ sender, System::EventArgs^ e) {
MessageBox::Show (Convert::ToString (sender));
}
};
Это показывает мне System.Windows.Forms.Button, Text: button1 или button2
Самый быстрый метод, о котором я думал, - это делать, если операторы используют Text, но как мне на самом деле получить доступ к свойству Text объекта отправителя?
Edit:
Может быть, я делаю это неправильно, но я добавил
Button button = sender as Button
прямо над строкой MessageBox, и я получил
System::Windows::Forms::Button' : class does not have a copy-constructor
syntax error : missing ';' before identifier 'as'
error C2065: 'as' : undeclared identifier
syntax error : missing ';' before identifier 'Button'
System::Windows::Forms::Button' : illegal use of this type as an expression
see declaration of 'System::Windows::Forms::Button'