Avatar billede whynot Nybegynder
19. juli 2004 - 14:42 Der er 4 kommentarer og
1 løsning

Tpopupmenu, dynamisk item.add()

Hejsa eksperter

.. hvordan tilføjer man punkter i en Tpopupmenu dynamisk?

jeg vil tilføje punkter i en popupmenu ved at trykke på en knap.. og det går fint med caption men desværre ikke med onclick proceduren.

Hvordan tilføjer man den?.. jeg ved at den skal være af typen TNotifyEvent men hvordan bygger man koden op?

jeg har følgende:

procedure TForm1.AddMenu(var popupmenu: Tpopupmenu);
var
  mi: TMenuItem;
  OnClickProcedure: TNotifyEvent;
begin
  mi := TMenuItem.Create(self);
  mi.Caption := 'xxxx';
  mi.OnClick := OnClickProcedure(showmessage('hejsa'));
  popupmenu.Items.Add(mi);
end;

ovenstående kode skulle gerne tilføje et menupunkt med caption: xxxx og en onclick procedure som giver en showmessage hvor der står "hejsa"... men det virker ikke.!

Der er en typecast fejl.. det kan jeg også godt se... men jeg ved ikke hvad jeg skal gøre for at rette det til så det virker.. jeg håber nogen af jer eksperter kan hjælpe :)
Avatar billede borrisholt Novice
19. juli 2004 - 14:46 #1
dU SKAL erklære dig en procedure på din for det hedder fx OnClickProcedure sådan her : OnClickProcedure(sender : TObject); og implemtere den.

og så bruge det kode her :

procedure TForm1.AddMenu(var popupmenu: Tpopupmenu);
var
  mi: TMenuItem;
begin
  mi := TMenuItem.Create(popupmenu);
  mi.Caption := 'xxxx';
  mi.OnClick := OnClickProcedure;
  popupmenu.Items.Add(mi);
end;

Utestet men noget i den retning.

Jens B
Avatar billede whynot Nybegynder
19. juli 2004 - 14:51 #2
helt perfekt - smukt.!

Mange tak for hjælpen :)
Avatar billede borrisholt Novice
19. juli 2004 - 14:56 #3
whynot>> Np kan du lide mine svar, må du meget gerne gå ind og tildele mig karma.

Jens B
Avatar billede whynot Nybegynder
19. juli 2004 - 14:58 #4
her med gjort - anede ikke at den funktion på siden ;)
Avatar billede whynot Nybegynder
19. juli 2004 - 14:59 #5
ups - jeg sprogspasser.. vi prøver lige igen...

her med gjort - anede ikke at den funktion eksisterede på siden ;)
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