2009-11-23 11 views
8

Hallo, ich benutze das Nimbus Look-and-Feel und habe eine Tabbedpane mit einem Icon und Text. Jetzt erscheint das Symbol auf der rechten Seite des Textes, während ich es auf der linken Seite haben möchte.JTabbedPane: Symbol auf der linken Seite der Registerkarten

Ich möchte auch etwas Abstand zwischen dem Symbol und dem Text hinzufügen.

danke!

Antwort

15

Sie müssen die Registerkarte Komponente selbst einstellen; welches regelt, wie der Tab-Titel gerendert wird.

// Create tabbed pane and add tabs. 
JTabbedPane tabbedPane = ... 

// Create bespoke component for rendering the tab. 
JLabel lbl = new JLabel("Hello, World"); 
Icon icon = new ImageIcon(getClass().getResource("/foo/bar/hello.jpg")); 
lbl.setIcon(icon); 

// Add some spacing between text and icon, and position text to the RHS. 
lbl.setIconTextGap(5); 
lbl.setHorizontalTextPosition(SwingConstants.RIGHT); 

// Assign bespoke tab component for first tab. 
tabbedPane.setTabComponentAt(0, lbl); 

Offensichtlich können Sie dies in einem Dienstprogramm Methode kapseln:

private void addTab(JTabbedPane tabbedPane, Component tab, String title, Icon icon) { 
    tabbedPane.add(tab); 

    JLabel lbl = ... // Create bespoke label for rendering tab title. 

    tabbedPane.setTabComponentAt(tabbedPane.getTabCount() - 1, lbl); 
} 
+0

i diesen Code wurde mit hinzufügen (Komponente, Bindfaden, Symbol und Tooltip) auf die Registerkarte pane.addTab ("Name of Tab ", neues ImageIcon (" resources \\ 1.png "), mainPanel," Tooltip-Text "); jetzt möchte ich das gleiche (der Text auf der rechten Seite und Symbol auf der linken Seite) ich versuchte das gleiche Sie in Ihrem Kommentar oben ... angegeben und ich habe Ausnahme in meinem Code ... bitte helfen – Gagan93

+0

@ Gagan93: Bitte Kannst du das als separate Frage posten? ohne die Ausnahme zu sehen, bin ich mir nicht sicher, ob ich helfen kann. – Adamski

+0

ok, ich habe nicht geschrieben, aus Angst, downvoted zu werden, ich posten eine andere Frage innerhalb von 2 Minuten mit meinem Problem ... bitte bieten Sie eine Lösung – Gagan93

Verwandte Themen