Icon im Menü darstellen

Rund um die LCL und andere Komponenten
Antworten
dl5eu
Beiträge: 33
Registriert: Do 12. Sep 2013, 12:40

Icon im Menü darstellen

Beitrag von dl5eu »

Hallo Forumgemeinde,

in der MainForm eines Programms habe ich eine ActionList mit zurzeit einer Aktion, eine ImageList mit einem Icon und ein MainMenu mit MenuItems. Wenn ich im ActionList-Editor der ActionList die ImageList zuweise und der Aktion den ImageIndex angebe, wird das Icon neben dem Actionnamen dargestellt. Weise ich diese Aktion jetzt einem MenuItem zu, wird das Icon nicht im Menü angezeigt, obwohl der ImageIndex beim Eintragen der Action in das MenuItem richtig gesetzt wurde. Weise ich das Icon aber explizit der Eigenschaft "Bitmap" des MenuItems zu, funktioniert es.

Meine Suche nach "icon menü" hier im Forum hat mich leider nicht weiter gebracht.

Hat jemand von Euch diesen Effekt schon einmal beobachtet? Ist das normal oder handelt es sich um einen Bug? Oder muss ich "Bitmap" explizit auf das über die Aktion anzuzeigende Icon setzen?

Bisher bin ich davon ausgegangen, dass das Setzen der Action und des ImageIndex ausreichend sei. Allerdings habe ich noch nicht viel Erfahrung mit Lazarus.

Vielen Dank für Eure Hilfe!

Beste Grüße,

Ralf (DL5EU)

P.S. Ich verwende Lazarus 1.2.2 für Windows 32 Bit und Windows 7 SP1 32 Bit als Betriebssystem.

Christian
Beiträge: 6079
Registriert: Do 21. Sep 2006, 07:51
OS, Lazarus, FPC: iWinux (L 1.x.xy FPC 2.y.z)
CPU-Target: AVR,ARM,x86(-64)
Wohnort: Dessau
Kontaktdaten:

Re: Icon im Menü darstellen

Beitrag von Christian »

Du musst auch dem Menü noch die Imagelist zuweisen. Ausserdem gibts noch ne Einstellung ob überhaupt Icons angezeigt werden, da auf einigen Systemen Standardmäßig keine Icons in Menüs angezeigt werden aus ästhetischen gründen.
W.m.k.A.h.e.m.F.h. -> http://www.gidf.de/

dl5eu
Beiträge: 33
Registriert: Do 12. Sep 2013, 12:40

Re: Icon im Menü darstellen

Beitrag von dl5eu »

Hallo Christian,

Danke für den Hinweis.

Wenn ich die ImageList auch dem Menü zuweise funktioniert es. Problem gelöst :)

Beste Grüße,

Ralf (DL5EU)

Antworten