Zwei verschachtelte JTabbedPanes und Transparenz?

DarkHappyAffe

DarkHappyAffe

Mitglied
Thread Starter
Dabei seit
17.01.2007
Beiträge
59
Reaktionspunkte
0
Moin,

ich möchte innerhalb eines JTabbedPane ein weiteres JTabbedPane platzieren:
JTabbedPanes.png

Das funktioniert zwar an sich, aber um das innere TabbedPane (Peaks) gibt es einen hässlichen helleren rahmen, den man auch mit setOpaque(false) nicht wegbekommt:
Code:
JTabbedPane tp = new JTabbedPane();
Icon icon = new ImageIcon(this.getClass().getResource("images/up_small.png"));
tp.addTab("Peaks", icon, this.peakPanel);
tp.setOpaque(false);
Aber es wird doch sicherlich eine Möglichkeit geben, den transparent zu machen?
 
Ich glaube das war mal ein Bug in JTabbedPane, warum setOpaque(false) nicht funktioniert. Eine Möglichkeit, die mir in den Sinn kommt ist folgende:

Überschreibe die Methode paintContentBorder(Graphics g, int tabPlacement, int selectedIndex) in der Klasse BasicTabbedPaneUI so, dass der Bereich hinter der contentPane nicht gezeichnet wird. Das sollte das gewünschte Ergebnis bringen :)
 
Hm. Das ist natürlich doof. Aber dann mal ich doch lieber nur einen Rahmen drum. Gibt da ja eh nicht mehr als diesen einen Tab und das gefriggel ist es mir dann doch nicht wert .. *g*

Also danke für den Hinweis! :)
 
Ja also rein softwaretechnisch ist das natürlich nicht gut, da eine TabbedPane zu nehmen, wenn eh nur ein Tab da ist... Mach dann lieber ein JPanel mit der TitledBorder...

Aber "das gefriggel " ist auch nicht so schlimm... Einfach mal in den Original-Code schauen, kopieren und irgendwo wir da ein fillRect(...) auf dem Bereich sein, einfach auskommentieren und fertig...

Aber vielleicht ist der Bug ja auch inzwischen behoben und es geht auch anders... Das weis ich nicht :)
 
Zurück
Oben Unten