AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein GUI-Design mit VCL / FireMonkey / Common Controls Delphi TPopUpMenu Einträge zur Laufzeit ändern OnClick
Thema durchsuchen
Ansicht
Themen-Optionen

TPopUpMenu Einträge zur Laufzeit ändern OnClick

Ein Thema von venc · begonnen am 2. Jan 2009 · letzter Beitrag vom 2. Jan 2009
 
venc

Registriert seit: 4. Jan 2007
2 Beiträge
 
Delphi 2005 Personal
 
#1

TPopUpMenu Einträge zur Laufzeit ändern OnClick

  Alt 2. Jan 2009, 18:48
Hallo,

ich brauche Hilfe bei einem kleinen Problem, ich hab schon Google sowie das Forum hier befragt, die dort angewendeten Lösungen funktionieren bei mir leider nicht. Aber ersteinmal das Problem:

Mein Programm fügt zur Laufzeit einem existierenden PopUpMenu einzelnde Items hinzu.
Das funktioniert auch problemlos.
Nun, es liegt auf der Hand, dass man die Items aus dem PopUpMenu auch mit einer procedure verknüpfen möchte und das bereitet mir Kopfschmerzen.

Wie Luckie hier schreibt Link meckert mein Delphi 2005 leider, an folgender Stelle bleibt der compiler stehen:

NewItem.OnClick := OnMenuItemClick; Mit der Fehlermeldung:
[Fehler] Unit2.pas(124): E2009 Inkompatible Typen: 'Methodenzeiger und reguläre Prozedur'

Ich hab nun schon mehrere Lösungsansätze angeschaut und jedes mal wird es so gelöst (Ohne der OnClick Procedure einen Sender zuzuweisen) und es funktioniert bei mir nicht, entweder mit der eben erwähnten Fehlermedlung oder anderen... Habe nun schon nahezu alle möglichen schreibweisen durch.

Ich hoffe es liegt an einer falschen Deklaration eienr Variabel, hier mal die ganze Procedure:
Delphi-Quellcode:
procedure VariableMenuItemAdd(Menu: TPopUpMenu; ItemCaption: String);
var
  NewItem: TMenuItem;
begin
  NewItem:=TMenuItem.Create(Form2);
  inc(counter);
  NewItem.Caption:=ItemCaption;
  NewItem.Tag:=counter;
  NewItem.OnClick := OnMenuItemClick;
  Menu.Items.Add(NewItem);
end;
Ohne die Zeile NewItem.OnClick := OnMenuItemClick; funktioniert es... nur das OnClick lässt sich nicht zuordnen.... Hilfe!
Meine Vermutung, da bereits ein menu vorhanden ist muss ich mit NewItem:=TMenuItem.Create(Form2); kein neues erstellen, aber wie soll es sonst gehen?

Danke für die Hilfe

Edit: Die Vermutung ist falsch erstelle ja garkein zweites Menu
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:12 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz