JMenuItem gestalten

Hallo,

wie kann man einen Menüeintrag(JMenuItem), in dem sich ein Icon und ein String befinden, einheitlich gestalten?
Da die Bilder der Icons unterschiedlich gross sind, fangen die Text der Menüeinträge in den aufgeklappten Menuüs von oben nach unten gesehen an unterschiedlichen Stellen an, was natürlich nicht so toll aussieht. Vermutlich könnte ich das über Leerzeichen in den Strings regeln. Aber gibt es da vielleicht auch eine professionellere Methode zu?

Danke für Antwort!

Gruß, Lars

Hallo,

vermutlich reicht es, die preferredSize() des MenuItems zu setzen.

Gruß

Peter

Hallo,

wie kann man einen Menüeintrag(JMenuItem), in dem sich ein
Icon und ein String befinden, einheitlich gestalten?
Da die Bilder der Icons unterschiedlich gross sind, fangen die
Text der Menüeinträge in den aufgeklappten Menuüs von oben
nach unten gesehen an unterschiedlichen Stellen an, was
natürlich nicht so toll aussieht. Vermutlich könnte ich das
über Leerzeichen in den Strings regeln. Aber gibt es da
vielleicht auch eine professionellere Methode zu?

Die Monster-Antwort heißt, erweitere die Klasse JMenuItem und
Überschreibe die paint()-Methode, dann kannst du auf alle
unterschiedlichen Größen und Abstände reagieren (no fun).

Die Bären-Antwort: Anstatt eines JMenuItem ein JLabel verwenden, dem
Du dann noch die Listener anflanschen musst, die wiederum
ActionEvents ‚firen‘. Im Label kannst Du durch den Inset und die
Abstände zwischen Icon und Text eine einheitliche Ausrichtung
erzwingen ( a little better).

Die Mäuse-Lösung: Skaliere deine Icons auf die gleiche Größe und
nutze für Icon-lose Menu-Items einen leeren GIF / PNG in dieser Größe
( wohl das einfachste).

Gruß Peter