Доброго времени суток! К примеру в цикле формирую кучу кнопок, мне надо чтобы каждая выполняла свою задачу.
И так подробнее:
к примеру одна кнопка
TPNGButton *pngButton[10];
pngButton[1] = new TPNGButton(this);
pngButton[1]->Top = 290;
pngButton[1]->Left = 10;
pngButton[1]->Visible = true;
pngButton[1]->Parent = this;
pngButton[1]->OnClick = MyKeyPress;
pngButton[1]->Name = "name";
[/color]
void __fastcall TForm1::MyKeyPress(TObject *Sender)
{
ShowMessage("Привет");
}
Все кнопка появляется и выполняет то что надо, но если мне надо много кнопок и у них постоянно будут меняться их задачи т.е. как в примере выше, нужно что бы кнопки писали разные слова которые у меня формируются в цикле ну это не суть
делаю так:
String text = "Вася"
TPNGButton *pngButton[10];
pngButton[1] = new TPNGButton(this);
pngButton[1]->Top = 290;
pngButton[1]->Left = 10;
pngButton[1]->Visible = true;
pngButton[1]->Parent = this;
pngButton[1]->OnClick = MyKeyPress(this,text);
pngButton[1]->Name = "name";
[/color]
void __fastcall TForm1::MyKeyPress(TObject *Sender, String name)
{
ShowMessage(name);
}
Проект не компилится, выдает ошибку [C++ Error] Unit1.cpp(93): E2109 Not an allowed type
как сделать что бы один кусок кода
void __fastcall TForm1::MyKeyPress(TObject *Sender, String name)
{
ShowMessage(name);
}
работал на все кнопки, только изменял свои действия в зависимости от того что пришлет та или иная кнопка. Блин трудно то как объяснить что у меня в голове лежит =)