Avatar billede dktekno Nybegynder
02. februar 2007 - 14:45 Der er 2 kommentarer og
1 løsning

Onclick-event for dymaniske objekter

Jeg har oprettet en TPanel dynamisk, og tilført den en Onclick.

Onclick-event ser således ud:

procedure TForm1.ClickMe(Sender : TObject);
var
PanelName : TPanel;
begin
  PanelName := (Self.FindComponent('MyNewPanel1') as TPanel);

  with (Sender as TPanel) do
    ShowMessage('You clicked me ' + PanelName.caption);
end;

Men nu er det jo sådan, at når jeg klikker på den, ved jeg jo ikke på forhånd hvad den hedder. Jeg ved jo ikke, om den hedder "MyNewPanel1" eller om den hedder MyNewPanel228, eller hvor mange der nu er oprettet.

Derfor vil jeg have den til at udskrive hvilket navn objektet har, som jeg har klikket på.

Jeg har forsøgt med FindComponent(sender), men det virker ikke. Så hvordan finder jeg navnet på det objekt, som jeg har klikket på?
Avatar billede kroning Nybegynder
02. februar 2007 - 14:56 #1
procedure TForm1.ClickMe(Sender : TObject);
begin
    ShowMessage('You clicked me ' + (Sender as TPanel).Name);
end;
Avatar billede dktekno Nybegynder
02. februar 2007 - 14:57 #2
takker
Avatar billede kroning Nybegynder
02. februar 2007 - 14:58 #3
ok
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester