Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Icons verschwinden aus der Überschrift des MainMenu (https://www.delphipraxis.net/178738-icons-verschwinden-aus-der-ueberschrift-des-mainmenu.html)

Back2Code 24. Jan 2014 10:58

Delphi-Version: 2010

Icons verschwinden aus der Überschrift des MainMenu
 
Liste der Anhänge anzeigen (Anzahl: 3)
Hallo zusammen, ich bin heute auf ein ziemlich komisches Problem gestoßen und zwar benutze ich eine TImageList & das TMainMenu. Den Überschriften Icons zuzuordnen funktioniert soweit ganz gut bis man z.B ein Memo / RichEdit auf die Form legt denn dann verschwinden die Icons komischerweise aber auch nur aus den Überschriften. Die unteren Einträge sind nicht betroffen.

Screenshots sind angehängt. Möglicherweise kann mir ja jemand da weiterhelfen.

SO Link :
https://stackoverflow.com/questions/...mo-on-the-form

EDIT: Hab jetzt ma noch ein Example mit hochgeladen

Union 24. Jan 2014 12:35

AW: Icons verschwinden aus der Überschrift des MainMenu
 
Ohne einen minimalen Code + dfm kann man da nix sagen.

Back2Code 24. Jan 2014 12:37

AW: Icons verschwinden aus der Überschrift des MainMenu
 
Zitat:

Zitat von Union (Beitrag 1245184)
Ohne einen minimalen Code + dfm kann man da nix sagen.

Was möchtest du denn groß an Code sehen gibts ja nichts zu posten... Um das "Problem" nachzustellen einfach eine neue Form machen. Dann ein TMainMenu + ImageList auf die Form ziehen. Ein paar 16x16 Icons zur Imagelist hinzufügen. Random Menüs erstellen und Icons darauf verteilen und dann einmal mit Memo/ohne Memo kompilieren und starten und schauen was passiert...

Bei Delphi2010 Upd1+2 installiert... 8-)

Beispielprojekt angehangen.

Bitte nur mit Delphi 2010 öffnen bringt mir nichts wenn das Problem zb in Xe3 behoben wurde oder dort was ganz anderes passiert.

Union 24. Jan 2014 12:47

AW: Icons verschwinden aus der Überschrift des MainMenu
 
Ich habe das jetzt mal mit Delphi 7 ausprobiert, da ist es das gleiche Verhalten. Wenn man den Umweg über eine Actionlist geht, bleiben aber die Images erhalten.

DeddyH 24. Jan 2014 12:49

AW: Icons verschwinden aus der Überschrift des MainMenu
 
In XE dasselbe Verhalten. Allerdings sind nur die Haupteinträge betroffen, in den Untermenüs bleiben die Bilder erhalten.

Back2Code 24. Jan 2014 12:49

AW: Icons verschwinden aus der Überschrift des MainMenu
 
Zitat:

Zitat von DeddyH (Beitrag 1245189)
In XE dasselbe Verhalten. Allerdings sind nur die Haupteinträge betroffen, in den Untermenüs bleiben die Bilder erhalten.

Genau so isses auch bei 2010. Find ich aber ehrlich gesagt ziemlich besch** denn dann bekommt das MainMenü wieder diesen unglaublich hässlichen grauen Verlauf...

Union 24. Jan 2014 12:52

AW: Icons verschwinden aus der Überschrift des MainMenu
 
Du könntest evtl. für die Hauptmenüeintrage die Bitmap-Property aus der Imagelist füllen. Schleife über Items, mit Imageindex die Grafik holen, Bitmap des Items füllen und Imageindex dann auf -1 setzen.

Volker Z. 24. Jan 2014 13:57

AW: Icons verschwinden aus der Überschrift des MainMenu
 
Hallo,

wenn Du eine ActionList nimmst, der ActionList und dem MainMenu eine ImageList zuordnest und den Menüeinträgen je eine Action (jeder Action den entsprechenden ImageIndex zugeordnet) dann sollten die Grafiken nicht mehr verschwinden.

Gruß

Back2Code 24. Jan 2014 14:05

AW: Icons verschwinden aus der Überschrift des MainMenu
 
Zitat:

Zitat von Volker Z. (Beitrag 1245196)
Hallo,

wenn Du eine ActionList nimmst, der ActionList und dem MainMenu eine ImageList zuordnest und den Menüeinträgen je eine Action (jeder Action den entsprechenden ImageIndex zugeordnet) dann sollten die Grafiken nicht mehr verschwinden.

Gruß

Für die Actionlist & Main Menu dieselbe Imagelist oder 2 unterschiedliche?

Volker Z. 24. Jan 2014 14:14

AW: Icons verschwinden aus der Überschrift des MainMenu
 
Hallo,

Zitat:

Für die Actionlist & Main Menu dieselbe Imagelist oder 2 unterschiedliche?
Du solltest für beide dieselbe verwenden

Gruß

Harry Stahl 26. Jan 2014 12:48

AW: Icons verschwinden aus der Überschrift des MainMenu
 
Das ist ja mal ein Problem der Marke "very strange".

Zwei Workarounds hierzu:

1.Erzeuge das TMemo (oder TRichtEdit, das gleiche Problem) erst zur Laufzeit, dann bleiben die Icons im Hauptmenü.

2. Schalte beim TMainMenu die Eigenschaft "OwnerDraw" auf True. Wenn Du das Zeichnen der Menüeinträge nicht selber machen möchtest, kannst Du 6 Leerzeichen an jeden Hauptmenü-Eintrag anhängen, dann stimmt auch die Zeichnung der Hauptmenü-Einträge wieder (ohne diese Maßnahme sind die Abstände zu gering, das Bitmap übermalt dann den Text).

Wenn Du das noch nicht bei Quality-Central gemeldet ist, wäre es nicht schlecht da mal einen Eintrag zu machen.
Falls Du Quality-Central noch nicht genutzt haben solltest, findest Du hier eine Info dazu: http://www.devpage.de/using-quality-central.htm

Back2Code 27. Jan 2014 07:16

AW: Icons verschwinden aus der Überschrift des MainMenu
 
Zitat:

Zitat von Harry Stahl (Beitrag 1245385)
Das ist ja mal ein Problem der Marke "very strange".

Zwei Workarounds hierzu:

1.Erzeuge das TMemo (oder TRichtEdit, das gleiche Problem) erst zur Laufzeit, dann bleiben die Icons im Hauptmenü.

2. Schalte beim TMainMenu die Eigenschaft "OwnerDraw" auf True. Wenn Du das Zeichnen der Menüeinträge nicht selber machen möchtest, kannst Du 6 Leerzeichen an jeden Hauptmenü-Eintrag anhängen, dann stimmt auch die Zeichnung der Hauptmenü-Einträge wieder (ohne diese Maßnahme sind die Abstände zu gering, das Bitmap übermalt dann den Text).

Wenn Du das noch nicht bei Quality-Central gemeldet ist, wäre es nicht schlecht da mal einen Eintrag zu machen.
Falls Du Quality-Central noch nicht genutzt haben solltest, findest Du hier eine Info dazu: http://www.devpage.de/using-quality-central.htm

Werd ich bei Gelegenheit mal reporten. Die Idee mit den Leerzeichen ist so simpel und trotzdem bin ich nicht drauf gekommen :lol: Die Eigenschaft OwnerDraw hab ich ja relativ auch schnell gefunden nur wusste ich dann nicht wie man die Länge der Captions wieder anpasst.

Die Sache mit der Caption im Memo weglassen nehme ich jetzt für mich als Lösung. Also falls jmd mal das gleiche Problem haben sollte ist die "1" von Harry richtig bzw. einfach die Caption entfernen und erst zur Laufzeit Text hinzufügen.

EDIT: Ich würde das Problem ja gerne reporten aber der Quality Manager stürzt bei mir ständig ab wenn ich ihn updaten möchte und nehme ich die alte Version spinnt alles rum -.-'


Alle Zeitangaben in WEZ +1. Es ist jetzt 04:08 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz