Yep, ik ben er uit. Dat wil zeggen, ik heb een oplossing. Zie onderstaande.
Delphi Code:
unit Main;
interface
uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.Menus, System.UITypes, Vcl.StdCtrls;
type
TForm1 = class(TForm)
MainMenu1: TMainMenu;
Links1: TMenuItem;
procedure HenkItemClick(Sender: TObject);
procedure PietItemClick(Sender: TObject);
procedure KeesItemClick(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
NewItem : TmenuItem;
implementation
{$R *.dfm}
procedure TForm1.HenkItemClick(Sender: TObject);
begin
MessageDlg('Er is op Henk geklikt.', mtInformation, [mbOK], 0, mbOK);
end;
procedure TForm1.PietItemClick(Sender: TObject);
begin
MessageDlg('Er is op Piet geklikt.', mtInformation, [mbOK], 0, mbOK);
end;
procedure TForm1.KeesItemClick(Sender: TObject);
begin
MessageDlg('Er is op Kees geklikt.', mtInformation, [mbOK], 0, mbOK);
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
NewItem := TMenuItem.Create(MainMenu1);
NewItem.OnClick := HenkItemClick;
NewItem.Caption := 'Henk';
MainMenu1.Items[0].Insert(0, NewItem);
NewItem := TMenuItem.Create(MainMenu1);
NewItem.OnClick := PietItemClick;
NewItem.Caption := 'Piet';
MainMenu1.Items[0].Insert(1, NewItem);
NewItem := TMenuItem.Create(MainMenu1);
NewItem.OnClick := KeesItemClick;
NewItem.Caption := 'Kees';
MainMenu1.Items[0].Insert(2, NewItem);
end;
end.
Ook als de MenuItems (nog) niet bestaan is het allemaal geen probleem. Maar ik ben nog niet tevreden. Want het allemaal veel te statisch.
Liever zou ik 1 OnClick procedure willen zien. En daarin uitvissen wie er nu geClickt heeft. Maar hoe doe ik dat?
Bookmarks