Event do do dynamicznie tworzonego komponentu.

0

Witam,
Niedawno zacząłem bawić się biuderem i napotkałem pewien problem. Tworze sobie dynamicznie tablicę obiektów TImage, ale mam problem z obsługą Eventów do tego komponentu.

TImage *pola[8][8];
for(int i=0;i<8;i++)
     for(int j=0;j<8;j++){
            if((i+j)%2==0){
            pola[i][j] = new TImage(this);
            pola[i][j]->Parent = Form1;
            pola[i][j]->Left = (i)*52;
            pola[i][j]->Top = (j)*52;
            pola[i][j]->Picture->LoadFromFile("images/black.jpg");
            pola[i][j]->Name ="Image" + IntToStr(i+1)+IntToStr(j+1);
            pola[i][j]->OnClick = OnClick;
            }
        }

Dodaję zdarzenie OnClick, ale nie mam pojęcia jak je obsługiwać.
próbowałem:

void __fastcall TForm1::OnClick(TObject *Sender)
{
    ShowMessage(ActiveControl->Name);
}

ale po kliknięciu na komponent program się wywala na

ActiveControl->Name

user image
Może źle tworze komponenty? A może źle obsługuję Event?
Byłbym wdzięczny za każdą radę.

1

Kod tworzenia listy obrazów jest poprawny, problem masz w

ActiveControl->Name

Tym czego potrzebujesz jest: ShowMessage( ((TImage*)Sender)->Name );

0

rzutowanie.. nio tak, qrcze mogłem się domyślić. Dziękuję:)

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0