LookAndFeel Nimbus BUG mit JTabbedPane?!

hdi

Top Contributor
Hey,

Ich habe zur Zeit Schwierigkeiten mit dem Layout von ein paar TabbedPanes, unter Verwendung vom Nimbus L&F. Wenn sie nicht genug Breite haben, um den Tab-Header vollständig anzeigen zu können, dann "kollabieren" sie in sich zusammen. Naja eigentlich rutscht der Header einfach nur ca 25px nach unten. Wenn allerdings unter der TabbedPane eine andere Komponente ist, die diesen Platz eigentlich einnimmt, dann rutscht der Header IN den eigentlichen Content hinein.

Ich dachte erst es liegt an meinem Layout. Hab verschiedene Layout Manager durchprobiert usw, aber jetzt habe ich herausgefunden dass es an Nimbus liegt.

Bitte mal das folgende KSKB starten (einmal mit Nimbus L&F und einmal mit Default) und jeweils die Fenster-Breite verringern. Unter Verwendung des Nimbus L&F solltet ihr sehen was ich meine:

Java:
import java.awt.Dimension;

import javax.swing.JComponent;
import javax.swing.JFrame;
import javax.swing.JList;
import javax.swing.JTabbedPane;
import javax.swing.SwingUtilities;
import javax.swing.UIManager;

@SuppressWarnings("serial")
public class NimbusTabbedPaneBug extends JFrame {

	public static void main(String[] args) {
		SwingUtilities.invokeLater(new Runnable() {
			public void run() {

				try {
					UIManager
							.setLookAndFeel("javax.swing.plaf.nimbus.NimbusLookAndFeel");
				} catch (Exception e) {
					e.printStackTrace();
				}

				new NimbusTabbedPaneBug().setVisible(true);
			};
		});

	}

	public NimbusTabbedPaneBug() {
		setDefaultCloseOperation(EXIT_ON_CLOSE);

		JTabbedPane tabs = new JTabbedPane();

		JComponent tabContent = new JList<Object>(new String[] { "Entry 1",
				"Entry 2", "Entry 3" });
		tabContent.setPreferredSize(new Dimension(350, 200));

		tabs.addTab("This is an incredibly interesting tab title", tabContent);

		add(tabs);
		pack();
		setLocationRelativeTo(null);
	}
}

Gibt's jemanden, bei dem dieses Problem mit dem Nimbus L&F NICHT auftritt? Bitte JDK und OS posten!

Muss ich jetzt das L&F wechseln oder habt ihr irgendwelche Ideen? Soll ich ein Bugticket eröffnen? Habe dazu nichts bei google gefunden. Ich finde den Bug, sofern es wirklich einer ist (wobei ich nicht weiß was ich an dem kleinen KSKB falsch gemacht haben könnte), einigermaßen heftig. Damit kann man das Nimbus L&F mehr oder weniger nicht in einer GUI verwenden, die ein JTabbedPane enthält. Was ja durchaus viele tun.
 

hdi

Top Contributor
Kurzer Nachtrag:

Wenn man die TabLayoutPolicy von WRAP auf SCROLL stellt, passiert dieses Nach-unten-Rutschen nicht mehr. Allerdings gibt's da ganz andere Probleme:
1) Der Rahmen der TabbedPane wird nicht mehr gezeichnet, d.h. die eigentliche Tab-Component schließt nicht mehr mit dem Tab ab sondern hängt mehr oder weniger drunter in der Luft. Sieht ganz schön schlecht aus.
2) Ich hab solche TabbedPanes auch innerhalb einer JList (als Renderer) und da zerschießt es mir alles..

Fazit: Nimbus & JTabbedPane = nicht so toll :(
 
I

irgendjemand

Gast
BUG bestätigt

OS : Win 7 Ulti x64 SP1 GER
Java : Java7 Update2 x86/x64

erhalte genau das gleiche ergebnis
 

hdi

Top Contributor
DAnke für's Feedback. Hab auch eben grad ein Ticket erstellt:

Bug Database

(Kann 1-2 Tage dauern bis es freigeschaltet wird). Ich erhoffe mir allerdings nichts davon. In dieser Bug Database haben sie zum Teil Tickets von vor 5+ Jahren die auch vielfach bestätigt sind aber nie gefixt wurden.
 

Olli_M

Mitglied
Hallo,

ja, bei mir tritt der TabbedPaneBug auch auf bei Nimbus (Header rutscht nach unten, wenn man
die Breite reduziert). Allerdings hab ich noch soviele andere Bugs bei Nimbus, dass ich es gar nicht produktiv verwende (obwohl ich es gerne würde, weil es wirklich gut aussieht).

- meine Menüpunkte verrutschen nach rechts, wenn sie markiert werden
- Probleme mit der Schriftgröße (war ok bei anderem L&F, bei Nimbus zu klein)
- am blödesten: Exceptions folgender Art

Code:
java.lang.NullPointerException
	at sun.font.FontDesignMetrics$MetricsKey.init(FontDesignMetrics.java:199)
	at sun.font.FontDesignMetrics.getMetrics(FontDesignMetrics.java:267)
	at sun.swing.SwingUtilities2.getFontMetrics(SwingUtilities2.java:984)
	at javax.swing.JComponent.getFontMetrics(JComponent.java:1597)

Java 1.6.012 / XP

Mit dem TabbedPaneBug alleine könnte ich ja noch leben, aber nur für ein L&F noch viel Arbeit in bereits funktionierenden Code zu stecken, ich weiß nicht so recht... :noe:

viele Grüße
Olli
 

bERt0r

Top Contributor
Ollie, da würde ich vorher mal Java auf die aktuelle Version updaten. Nimbus is ja erst mit Java 6 10 rausgekommen, da werden bei 12 sicher noch einige Bugs drin sein.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
M JTabbedPane verändern mit Nimbus Look and Feel AWT, Swing, JavaFX & SWT 1
A LookAndFeel Rollover Effekt bei JTabbedPane deaktivieren (Nimbus) AWT, Swing, JavaFX & SWT 8
Y LookAndFeel JTabbedPane: Tab-Farbe mit Nimbus setzen AWT, Swing, JavaFX & SWT 3
R LookAndFeel Wie kann man die Textfarbe der Nimbus ProgressBar nach Füllstand ändern? AWT, Swing, JavaFX & SWT 2
V LookAndFeel JSpinner Hintergrund Farbe mit Nimbus LaF AWT, Swing, JavaFX & SWT 0
H Nimbus ProgressBar Colors AWT, Swing, JavaFX & SWT 9
H Nimbus L&F TitledBorder AWT, Swing, JavaFX & SWT 2
V Nimbus Look and Feel register Region problem AWT, Swing, JavaFX & SWT 5
V Nimbus Look And Feel Button textForeground AWT, Swing, JavaFX & SWT 8
M jTabbedPain und Nimbus AWT, Swing, JavaFX & SWT 4
T Nimbus JButton: Zeilenumbruch korrigieren? AWT, Swing, JavaFX & SWT 9
N Nimbus Look & Feel AWT, Swing, JavaFX & SWT 4
Y LookAndFeel Nimbus einschalten geht nicht AWT, Swing, JavaFX & SWT 31
V Swing Nimbus Look And Feel verschiedene Buttons AWT, Swing, JavaFX & SWT 8
B LookAndFeel Cell Renderer für JTable bei Nimbus Look and Feel AWT, Swing, JavaFX & SWT 2
T Nimbus Überschrift AWT, Swing, JavaFX & SWT 10
P LookAndFeel nimbus JLabel undurchsichtig opaque funktioniert nicht AWT, Swing, JavaFX & SWT 4
R LookAndFeel Nimbus ändert Programmausführung AWT, Swing, JavaFX & SWT 8
N Swing Nimbus arbeitet nicht korrekt korrekt bei setEnabled() für JMenuItem AWT, Swing, JavaFX & SWT 2
C LookAndFeel Nimbus TabbedPane Backgroundcolor AWT, Swing, JavaFX & SWT 12
S Metal-Buttons so aussehen lassen wie Nimbus Buttons? AWT, Swing, JavaFX & SWT 3
Fu3L Keine Transparenten JTextComponents möglich mit Nimbus L&F? AWT, Swing, JavaFX & SWT 5
S Swing JTable in Nimbus AWT, Swing, JavaFX & SWT 4
O nimbus Abbrechen ok vertauscht AWT, Swing, JavaFX & SWT 2
E Look & Feel - Nimbus AWT, Swing, JavaFX & SWT 12
A Nimbus eigener Painter funzt nicht AWT, Swing, JavaFX & SWT 11
data89 Nimbus Look and Feel als gepackte JAR-Datei AWT, Swing, JavaFX & SWT 3
T Swing: TaskPane mit Nimbus LnF? AWT, Swing, JavaFX & SWT 4
M Problem Nimbus Look&Feel AWT, Swing, JavaFX & SWT 2
oliver1974 Nimbus Look & Feel und die Ausgaben nach Standardaus. AWT, Swing, JavaFX & SWT 4
BabySuna darstellungsprobleme mit JTabbedPane und GridBagLayout AWT, Swing, JavaFX & SWT 8
I JTabbedPane mit DnD, [x]-Schaltfläche, [+]-Schaltfläche usw. AWT, Swing, JavaFX & SWT 1
D JScrollPane in JTabbedPane AWT, Swing, JavaFX & SWT 3
D Kein Icon beim JTabbedPane AWT, Swing, JavaFX & SWT 1
B JTabbedPane Tabs anordnen AWT, Swing, JavaFX & SWT 2
D JTabbedPane GUI Experimente AWT, Swing, JavaFX & SWT 4
N JLabel in JTabbedPane verschieben AWT, Swing, JavaFX & SWT 2
U JScrollPane -> JTabbedPane u.A. AWT, Swing, JavaFX & SWT 3
L JTabbedPane mit for Schleife aufbauen AWT, Swing, JavaFX & SWT 4
J JTabbedPane Vollbild wenn Tabwechsel AWT, Swing, JavaFX & SWT 1
B StateChangeListener auf JTabbedPane AWT, Swing, JavaFX & SWT 5
F jTabbedPane Tabwechsel deaktivieren AWT, Swing, JavaFX & SWT 2
J JTabbedPane: close Button Problem AWT, Swing, JavaFX & SWT 2
J JTabbedPane: table in new tab: tooltip benutzt die column-widths von table in erstem geöffneten tab AWT, Swing, JavaFX & SWT 17
F JTabbedPane bestimmten Tab ansprechen AWT, Swing, JavaFX & SWT 13
F JTabbedPane mit Button zum Hinzufügen eines neuen Tabs AWT, Swing, JavaFX & SWT 6
BRoll JTabbedPane setTitleAt OutOfBoundsExc AWT, Swing, JavaFX & SWT 4
K JTabbedPane Tab Markierung / Selektion AWT, Swing, JavaFX & SWT 4
B Custom JTabbedPane-Tab-Design AWT, Swing, JavaFX & SWT 2
L JTabbedPane Closebutton integrieren AWT, Swing, JavaFX & SWT 6
J JTabbedPane Grafik unterhalb der Tabs AWT, Swing, JavaFX & SWT 3
H Swing JTabbedPane: Zusätzliche Buttons neben den Tabs AWT, Swing, JavaFX & SWT 7
V JTabbedPane Eingefügte Labels verschoben AWT, Swing, JavaFX & SWT 2
M Swing JTabbedPane: Tab-Elemente anpassen AWT, Swing, JavaFX & SWT 3
S Swing JTabbedPane: Nur nach ButtonClick und nicht nach Click auf Tab ins nächste Tab wechseln AWT, Swing, JavaFX & SWT 2
P JTabbedPane per Menuitem erstellen AWT, Swing, JavaFX & SWT 20
K Swing JTabbedPane wird nicht angezeigt AWT, Swing, JavaFX & SWT 19
B Swing JTabbedPane in JApplet -> Reiter bei Aktualisation mehrmals zu sehen AWT, Swing, JavaFX & SWT 3
M JTabbedPane -> setSelectedIndex funzt nicht AWT, Swing, JavaFX & SWT 3
D Bestimmtes JPanel innerhalb eines JTabbedPane ansprechen AWT, Swing, JavaFX & SWT 2
M jtabbedpane aktivieren/deaktivieren AWT, Swing, JavaFX & SWT 13
J Swing Letzten Tab einer JTabbedPane ermitteln AWT, Swing, JavaFX & SWT 6
T JTabbedPane - neuen Tab zwischen zwei anderen Tabs hinzufügen AWT, Swing, JavaFX & SWT 2
B Hilfe zu JTable und JTabbedPane AWT, Swing, JavaFX & SWT 18
hdi Swing Problem mit JTabbedPane AWT, Swing, JavaFX & SWT 2
T Inhalt von einem Tab an JTabbedPane größe ausrichten? AWT, Swing, JavaFX & SWT 2
S JTabbedPane Problem AWT, Swing, JavaFX & SWT 3
S JTabbedPane AWT, Swing, JavaFX & SWT 4
D JTabbedPane mit Eventlistener versehen? AWT, Swing, JavaFX & SWT 9
M Swing JTabbedPane Panels deaktivieren AWT, Swing, JavaFX & SWT 2
K JTabbedPane setName() für jedes Tab AWT, Swing, JavaFX & SWT 2
G JTabbedPane - Länge der Reiter beeinflussen? AWT, Swing, JavaFX & SWT 9
G Swing JTabbedPane Was für ein Border wird da um die Tabs gezeichnet? AWT, Swing, JavaFX & SWT 6
S Swing Komponentengröße in JTabbedPane AWT, Swing, JavaFX & SWT 7
M Ein Tab eine JTabbedPane durch Button Druck öffen AWT, Swing, JavaFX & SWT 2
M CloseButton bei JTabbedPane AWT, Swing, JavaFX & SWT 4
P Swing JTabbedPane mit JButton einen anderen Tab anzeigen AWT, Swing, JavaFX & SWT 9
D JTabbedPane zentrieren AWT, Swing, JavaFX & SWT 2
S Swing JTabbedPane: Inhalt soll oben links anfangen AWT, Swing, JavaFX & SWT 6
Mike90 JTabbedPane Größe anpassen AWT, Swing, JavaFX & SWT 17
F JTabbedPane Reiter breite AWT, Swing, JavaFX & SWT 4
B JTabbedPane mit Enumeration dynamisch füllen AWT, Swing, JavaFX & SWT 5
D Swing Tab in JTabbedPane AWT, Swing, JavaFX & SWT 5
A JFrame > JTabbedPane > JPanel > addKeyListener AWT, Swing, JavaFX & SWT 18
D JTabbedPane - Farbe ändern im Bereich hinter den Reitern AWT, Swing, JavaFX & SWT 2
M JTabbedPane - Tab auslesen AWT, Swing, JavaFX & SWT 2
H Swing Problem mit JTabbedPane AWT, Swing, JavaFX & SWT 9
D jtabbedpane Event VOR tab-Wechsel AWT, Swing, JavaFX & SWT 3
S Border von JTabbedpane-Tab? AWT, Swing, JavaFX & SWT 3
M JTabbedPane Docable? AWT, Swing, JavaFX & SWT 3
L Swing JTabbedPane - Index vom Tab AWT, Swing, JavaFX & SWT 3
D Swing JTabbedPane, TabComponent & Popup AWT, Swing, JavaFX & SWT 4
F Borders von JTabbedPane und JScrollPane AWT, Swing, JavaFX & SWT 5
W JTabbedPane Größe anpassen AWT, Swing, JavaFX & SWT 4
G Swing JTabbedPane vergrößern AWT, Swing, JavaFX & SWT 2
H Swing Register (jTabbedPane) dynamisch hinzufügen? AWT, Swing, JavaFX & SWT 7
D Tabs von JTabbedPane stylen AWT, Swing, JavaFX & SWT 6
U JTabbedPane: Layout-Probleme bei addTab zur Laufzeit AWT, Swing, JavaFX & SWT 2
1 JTabbedPane Tab ausdehnen AWT, Swing, JavaFX & SWT 3
F Swing JTabbedPane: Zur Laufzeit die Tabreihenfolge ändern AWT, Swing, JavaFX & SWT 2

Ähnliche Java Themen


Oben