Die auf die hier benötigen Teile reduzierte Variante müsste so aussehen:
Delphi-Quellcode:
type TMyMenuItem = class(TMenuItem)
protected
procedure AdvancedDrawItem(ACanvas: TCanvas; ARect: TRect;
State: TOwnerDrawState; TopLevel: Boolean); override;
end;
implementation
procedure TMyMenuItem.AdvancedDrawItem(ACanvas: TCanvas; ARect: TRect;
State: TOwnerDrawState; TopLevel: Boolean);
begin
State:= State - [odNoAccel];
inherited;
end;
Beachte, dass deine MenuItems von dieser Klasse sein müssen (oder davon abgeleitet). Keine Ahnung, ob Class Helper der neueren Delphis hier helfen könnten (hab ich noch nie benutzt) oder ob man die Klasse TMenuItem einfach redefinieren kann, so dass die erweiterte Klasse denselben Namen hat.
Grüße
Dalai