Hallo,
von welchem Typ ist
menu in deinem Beispiel? Wenn es ein TTBToolBar ist, dann sollte folgendes funktionieren:
Delphi-Quellcode:
type
TForm1 =
class(TForm)
// ...
procedure MenuItemSelect(Sender: TTBCustomItem; Viewer: TTBItemViewer;
Selecting: Boolean);
// ...
private
MenuItemIndex: integer;
end;
implementation
procedure TForm1.MenuItemSelect(Sender: TTBCustomItem; Viewer: TTBItemViewer;
Selecting: Boolean);
begin
// wir merken uns welches item angeklickt wurde
MenuItemIndex := Viewer.
Index;
end;
procedure TForm1.MenuToolbarContextPopup(Sender: TObject; MousePos: TPoint;
var Handled: Boolean);
begin
// Wir wechseln das ContextMenu des ToolBar nach Bedarf aus
if MenuItemIndex = 5
then MenuToolBar.PopupMenu := TestPopupMenu
else MenuToolBar.PopupMenu := ToolbarPopupMenu;
end;
procedure TForm1.CreateMenuItem(Menu: TTBToolBar; sCaption:
string; id: integer;
url:
string; ).
var
tempItem: TTBItem;
begin
tempItem := TTBItem.Create(Menu);
// deine Zuweisungen
tempItem.OnSelect := MenuItemSelect;
Menu.Items[i].Add(tempItem);
end;
Grüße vom marabu