1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55
| program AjusteWave;
{$APPTYPE CONSOLE}
uses
Windows,
Classes,
Types,
Menus,
Dialogs;
type
TMonPopupMenu = class(TPopupMenu)
private
{ Déclarations privées }
Item1, Item2: TMenuItem;
FOnClick : TNotifyEvent;
procedure Item1Click(Sender: TObject);
published
property OnClick: TNotifyEvent read FOnClick write FOnClick;
end;
var
Position: TPoint;
ppMnu: TMonPopupMenu;
procedure TMonPopupMenu.Item1Click(Sender : TObject);
begin
ShowMessage('J''ai cliqué sur l''Item1 !');
end;
begin
ppMnu := TMonPopupMenu.Create(nil);
try
ppMnu.Item1 := TMenuItem.Create(nil);
ppMnu.Item2 := TMenuItem.Create(nil);
try
ppMnu.Item1.MenuIndex := 1;
ppMnu.Item2.MenuIndex := 0;
ppMnu.Item1.Caption := '66 %';
ppMnu.Item2.Caption := '15 %';
ppMnu.Items.Add(ppMnu.Item1);
ppMnu.Items.Add(ppMnu.Item2);
GetCursorPos(Position);
ppMnu.Item1.OnClick := ppMnu.Item1Click;
ppMnu.Popup(Position.X, Position.Y);
finally
ppMnu.Item1.Free;
ppMnu.Item2.Free;
end;
finally
ppMnu.Free;
end;
end. |
Partager