Массив компонент ???
Допустим простая задача - калькулятор. При нажатии на кнопки в поле Edit1->Text добавляем текст (набор числа). Писать аналогичную обработку каждой кнопки - тяжко. Возможно ли организовать всё в одной обработке.
Назначь для каждой кнопки один обработчик, допустим, ActionIns. На каждой кнопке, насколько я понимаю, в свойстве Caption хранится цифра.
Тогда так:
void __fastcall TForm1::ActionIns(TObject *Sender)
{
TButton *tb=(TButton *)Sender;
Edit1->Text=tb->Caption;
}
Допустим простая задача - калькулятор. При нажатии на кнопки в поле Edit1->Text добавляем текст (набор числа). Писать аналогичную обработку каждой кнопки - тяжко. Возможно ли организовать всё в одной обработке.
Я делал ето примерно так:
form.h
//
class TForm1:public TForm{
published:
void __fastcall TForm::OnClikNaKnopkach(TObject *sender);
form.cpp
void __fastcall TForm::OnClikNaKnopkach(TObject *sender){
int i=(TButton)Sender->Tag;
switch(i){
case 0:
...
}
...
Edit1->Text= Tag;
...
}
А потом вызвываешь так как тебе удобно. Хотя вариант не самый, и в релизи я его доработал.
Допустим простая задача - калькулятор. При нажатии на кнопки в поле Edit1->Text добавляем текст (набор числа). Писать аналогичную обработку каждой кнопки - тяжко. Возможно ли организовать всё в одной обработке.
Создай функцию где будеш что то вычислять....
ReadValue(int i){
switch(i){
case 1:
break;
case 2:
break;
case 3:
break;
case 4:
break;
}
}
А в событиях кнопки вызываеш с параметрами
ReadValue(1); // Button1
ReadValue(2); // Button2
ReadValue(3); // Button3
Назначь для каждой кнопки один обработчик, допустим, ActionIns. На каждой кнопке, насколько я понимаю, в свойстве Caption хранится цифра.
Тогда так:
void __fastcall TForm1::ActionIns(TObject *Sender)
{
TLabel *tl=(TLabel *)Sender;
Edit1->Text=tl->Caption;
}
Огромное спасибо. Всё работает на ура, проверил.
Огромное спасибо. Всё работает на ура, проверил.
Только там, конечно, не Label a Button :)
И еще надо бы для корректности на всякий случай вставлять проверку:
if(Sender->ClassNameIs("TButton"))
Понятно, что обработчик ты сам назначаешь для кнопок, но все-таки..