Extended JTabbedPane

Status
Nicht offen für weitere Antworten.
V

voidee

Gast
Hallo,

ich habe eine Erweiterung für das JTabbedPane geschrieben, das im Tab einen Schliessen-Button zur Verfügung stellt. Desweiteren wird ein bisschen genauer über den Focuserhalt und -verlust informiert.

Ich würde das gerne hier vorstellen, habe allerdings keine Möglichkeit, das ganze Paket irgendwo hochzuladen. Hat irgendjemand eine Seite, wo man das hochladen kann?

Wünsche allgemein noch frohe Weihnachten und schöne Feiertage.

Gruß
Tom
 

voidee

Mitglied
Ok, hier meine kleine Erweiterung des JTabbedPane:

Sourcen sind hier: XJTabbedPane Sources

Jar File ist hier: XJTabbedPane JAR-File

Kompiliert ist das mit dem JDK 1.6.0_11 (sehr neu)

die Testklasse ist als Main-Startklasse in der JAR-Datei eingetragen

Auswendig mal folgender Aufruf:
Code:
java -classpath XJTabbedPane.jar de.diov.test.XJTabbedPane

Viel Spass + Gutes Neues Jahr
Tom
 

sockeqwe

Mitglied
Ich habe mir auch schon so eine kleine Hilfsklasse geschrieben die so einen Close Button zu jeden Tab hinzufügt ...

Wenns jemand interessiert:
Code:
import java.awt.BasicStroke;
import java.awt.Color;
import java.awt.Component;
import java.awt.Dimension;
import java.awt.FlowLayout;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.FocusEvent;
import java.awt.event.FocusListener;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.awt.event.MouseMotionListener;

import javax.swing.AbstractButton;
import javax.swing.BorderFactory;
import javax.swing.JButton;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTabbedPane;
import javax.swing.plaf.basic.BasicButtonUI;



public class JCloseTabbedPane extends JTabbedPane
{
	private Color closeButtonStandardColor;
	private Color closeButtonRolloverColor;
	
	public JCloseTabbedPane()
	{
		super();
		setCloseButtonColor(Color.BLACK);
		setColoseButtonRolloverColor(Color.BLUE);
	}
	
	/**
	 * Set the color for the Close Buttons for each tab
	 * @param color
	 */
	public void setCloseButtonColor(Color color)
	{
		closeButtonStandardColor = color;
	}
	
	/**
	 * Set the color for the Close Button when mouse is over for each tab.
	 * @param color
	 */
	public void setColoseButtonRolloverColor(Color color)
	{
		closeButtonRolloverColor=color;
	}
	
	
	/**
	 * Add a new tab with close Button
	 * @param title
	 * @param component
	 */
	public void addCloseTab(String title, Component component)
	{
		this.add(title, component);
		this.setTabComponentAt(this.getTabCount()-1, new ButtonTabComponent(this));
		this.setSelectedIndex(this.getTabCount()-1);
	}
	
	
	public void setTitle(String title, int index)
	{
		((ButtonTabComponent)this.getTabComponentAt(index)).setTitleLabel(title);
	}

	
	
	

	/**
	 * Private Class for the Close Button
	 */
	
	class ButtonTabComponent extends JPanel {
	    private final JTabbedPane pane;
	    private JLabel label;
	    private JButton button;

	    public ButtonTabComponent(final JTabbedPane pane) {
	        //unset default FlowLayout' gaps
	        super(new FlowLayout(FlowLayout.LEFT, 0, 0));
	        if (pane == null) {
	            throw new NullPointerException("TabbedPane is null");
	        }
	        this.pane = pane;
	        setOpaque(false);
	        
	        //make JLabel read titles from JTabbedPane
	         label = new JLabel() {
	            public String getText() {
	                int i = pane.indexOfTabComponent(ButtonTabComponent.this);
	                if (i != -1) {
	                    return pane.getTitleAt(i);
	                }
	                return null;
	            }
	        };
	        
	        add(label);
	        //add more space between the label and the button
	        label.setBorder(BorderFactory.createEmptyBorder(0, 0, 0, 5));
	        //tab button
	        button = new TabButton();
	        add(button);
	        //add more space to the top of the component
	        setBorder(BorderFactory.createEmptyBorder(2, 0, 0, 0));
	       
	    }
	    
	    public void setTitleLabel(String title)
	    {
	    	label.setText(title);
	    }

	    private class TabButton extends JButton implements ActionListener {
	        public TabButton() {
	            int size = 17;
	            setPreferredSize(new Dimension(size, size));
	            setToolTipText("close this tab");
	            //Make the button looks the same for all Laf's
	            setUI(new BasicButtonUI());
	            //Make it transparent
	            setContentAreaFilled(false);
	            //No need to be focusable
	            setFocusable(false);
	            setBorder(BorderFactory.createEtchedBorder());
	            setBorderPainted(false);
	            //Making nice rollover effect
	            //we use the same listener for all buttons
	            addMouseListener(buttonMouseListener);
	            setRolloverEnabled(true);
	            //Close the proper tab by clicking the button
	            addActionListener(this);
	            
	           
	            
	        }

	        public void actionPerformed(ActionEvent e) {
	            int i = pane.indexOfTabComponent(ButtonTabComponent.this);
	            if (i != -1) {
	                pane.remove(i);
	            }
	        }

	        //we don't want to update UI for this button
	        public void updateUI() {
	        }

	        //paint the cross
	        protected void paintComponent(Graphics g) {
	            super.paintComponent(g);
	            Graphics2D g2 = (Graphics2D) g.create();
	            //shift the image for pressed buttons
	            if (getModel().isPressed()) {
	                g2.translate(1, 1);
	            }
	            g2.setStroke(new BasicStroke(2));
	            g2.setColor(JCloseTabbedPane.this.closeButtonStandardColor);
	            if (getModel().isRollover()) {
	                g2.setColor(JCloseTabbedPane.this.closeButtonRolloverColor);
	            }
	            int delta = 6;
	            g2.drawLine(delta, delta, getWidth() - delta - 1, getHeight() - delta - 1);
	            g2.drawLine(getWidth() - delta - 1, delta, delta, getHeight() - delta - 1);
	            g2.dispose();
	        }
	    }

	    
	     // removed final static
	    private MouseListener buttonMouseListener = new MouseAdapter() {
	        public void mouseEntered(MouseEvent e) {
	            Component component = e.getComponent();
	            if (component instanceof AbstractButton) {
	                AbstractButton button = (AbstractButton) component;
	                button.setBorderPainted(true);
	            }
	        }

	        public void mouseExited(MouseEvent e) {
	            Component component = e.getComponent();
	            if (component instanceof AbstractButton) {
	                AbstractButton button = (AbstractButton) component;
	                button.setBorderPainted(false);
	            }
	        }
	    };

		

	}	
	

	
	

} // End  JCloseTabbedPane
 

André Uhres

Top Contributor
voidee hat gesagt.:
Ok, hier meine kleine Erweiterung des JTabbedPane
Gut gemacht. Vielleicht könntest du noch einbauen, daß man auch Tabs ohne Closebutton haben kann.
Bei der Klasse "JCloseTabbedPane" von sockeqwe kann man z.B. "addTab" und "addCloseTab" verwenden.
 

iron

Neues Mitglied
Ich habe mir auch schon so eine kleine Hilfsklasse geschrieben die so einen Close Button zu jeden Tab hinzufügt ...

Habe sockeqwes Klasse als Basis für meine Umsetzung dieses Problems genommen und wollte meine Umsetzung auch hier teilen - auch wenn ich dadurch diesen Thread nach Jahren wieder aufwecken muss.

Meine Umsetzung orientiert sich sehr stark an dem bereits exisiterenden JTabbedPane, d.h. alle add-Methoden wurden überschrieben. Das Verhalten wird über ein enum gestuert. MAIN_TAB verhält sich wie folgt: der erste Tab, der hinzugefügt wird, ist der "Main"-Tab und standardmäßig nicht schließbar; alle weiteren Tabs sind standardmäßig schließbar. Des weiteren gibt es ALL_CLOSEABLE und NONE_CLOSEBALE. Ersteres macht alle Tabs schließbar; letzteres ist das Verhalten von JTabbedPane und das Standardverhalten von JCloseTabbedPane.

Zusätzlich gibt es zu jeder "alten" add(<param>)-Methode nun eine neue add(<param>, boolean closeable), welche selbsterklärend sein sollte.

Java:
package de.upbracing.gui.tabbed;

import java.awt.BasicStroke;
import java.awt.Color;
import java.awt.Component;
import java.awt.Dimension;
import java.awt.FlowLayout;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.util.Enumeration;

import javax.swing.AbstractButton;
import javax.swing.BorderFactory;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTabbedPane;
import javax.swing.plaf.basic.BasicButtonUI;

/**
 * This class extends JTabbedPane in the following way:
 *  - Tabs can now closeable, i.e. they have a X to close the tab
 *  - the add-methods are overridden
 *  - all add methods are overloaded with add(<old params>, boolean closeable), 
 *      where <code>closeable</code> specifies the closeability of the added tab
 */
public class JCloseTabbedPane extends JTabbedPane{
	private Color closeButtonStandardColor = Color.BLACK;
	private Color closeButtonRolloverColor = Color.BLUE;

	/**
	 * How the closeability of new tabs is determined:
	 * - ALL_CLOSEABLE, NONE_CLOSEABLE: all new tabs are closeable/non-closeable
	 * - MAIN_TAB: the first tab added (getTabCount()==0) is non-closeable,
	 *     tabs that are added later are closeable. Default behaviour.
	 *
	 */
	public enum Behaviour{
		MAIN_TAB, ALL_CLOSEABLE, NONE_CLOSEABLE
	}
	
	private Behaviour behaviour = Behaviour.NONE_CLOSEABLE;
	
	public JCloseTabbedPane(int tabPlacement, int tabLayoutPolicy, Behaviour behaviour) {
		super(tabPlacement, tabLayoutPolicy);
		this.behaviour = behaviour;
	}


	public JCloseTabbedPane(int tabPlacement, Behaviour behaviour) {
		super(tabPlacement);
		this.behaviour = behaviour;
		}


	/**
	 * Changes the behavior of JCloseTabbedPane to the specified behavior.
	 * If behavior is not specified by the behavior constantsm, no change is
	 * made.
	 * @param behavior the new behavior
	 */
	public void setBehavior(Behaviour behavior) {
		this.behaviour = behavior;
	}


	public JCloseTabbedPane(Behaviour behaviour)
	{
		super();
		this.behaviour = behaviour;
	}

	/**
	 * Set the color for the Close Buttons for each tab
	 * @param color
	 */
	public void setCloseButtonColor(Color color)
	{
		closeButtonStandardColor = color;
	}

	/**
	 * Set the color for the Close Button when mouse is over for each tab.
	 * @param color
	 */
	public void setColoseButtonRolloverColor(Color color)
	{
		closeButtonRolloverColor=color;
	}

	/**
	 * The new tab's closeability is specified by the behaviour of 
	 * JCloseTabbedPane. 
	 * Further documentation about the add-method: JTabbedPane
	 *
	 * @see Behaviour
	 * @see JTabbedPane#add(Component)
	 */
	public Component add(Component component) {
		switch (behaviour) {
		case NONE_CLOSEABLE:
			return add(component, false);
		
		case ALL_CLOSEABLE:
			return add(component, true);
		
		case MAIN_TAB:
		default:
			return add(component,(getTabCount() != 0));
		}
	}

	/**
	 * The new tab's closeability is specified by the behaviour of 
	 * JCloseTabbedPane. 
	 * Further documentation about the add-method: JTabbedPane
	 *
	 * @see Behaviour
	 * @see JTabbedPane#add(String, Component)
	 * @Override
	 */
	public Component add(String title, Component component) {
		switch (behaviour) {
		case ALL_CLOSEABLE:
			return add(title, component, true);

		case NONE_CLOSEABLE:
			return add(title, component, false);
			
		case MAIN_TAB:
		default:
			return add(title, component, (getTabCount() != 0));
					}}

	/**
	 * The new tab's closeability is specified by the behaviour of 
	 * JCloseTabbedPane. 
	 * Further documentation about the add-method: JTabbedPane
	 *
	 * @see Behaviour
	 * @see JTabbedPane.add(Component component, int index)
	 * @Override
	 */
	public Component add(Component component, int index) {
		return add(component, index, (getTabCount() != 0));
	}

	/**
	 * The new tab's closeability is specified by the behaviour of 
	 * JCloseTabbedPane. 
	 * Further documentation about the add-method: JTabbedPane
	 *
	 * @see Behaviour
	 * @see JTabbedPane.add(Component component, Object constraints)
	 * @Override
	 */
	public void add(Component component, Object constraints) {
		add(component, constraints, (getTabCount() != 0));
	}

	/**
	 * The new tab's closeability is specified by the behaviour of 
	 * JCloseTabbedPane. 
	 * Further documentation about the add-method: JTabbedPane
	 *
	 * @see Behaviour
	 * @see JTabbedPane.add(Component component, Object constraints, int index)
	 * @Override
	 */
	public void add(Component component, Object constraints, int index) {
		add(component, constraints, index, (getTabCount() != 0));
	}
	
	/**
	 * The new tab is closeable, when the parameter <code>closeable</code> says 
	 * so. Further documentation: JTabbedPane
	 * 
	 * 
	 * @see JTabbedPane.add(Component component)
	 */
	public Component add(Component component, boolean closeable) {
		Component returnValue = super.add(component);
		setNewestTabCloseable(closeable);
		selectNewTab();
		return returnValue;
	}

	/**
	 * The new tab is closeable, when the parameter <code>closeable</code> says 
	 * so. Further documentation: JTabbedPane
	 * 
	 * 
	 * @see JTabbedPane.add(String title, Component component)
	 */
	public Component add(String title, Component component, boolean closeable) {
		Component returnValue = super.add(title, component);
		setNewestTabCloseable(closeable);
		selectNewTab();
		return returnValue;
	}

	/**
	 * The new tab is closeable, when the parameter <code>closeable</code> says 
	 * so. Further documentation: JTabbedPane
	 * 
	 * 
	 * @see JTabbedPane.add(String title, Component component)
	 */
	public Component add(Component component, int index, boolean closeable) {
		Component returnValue = super.add(component, index);
		setNewestTabCloseable(closeable);

		return returnValue;
	}

	/**
	 * The new tab is closeable, when the parameter <code>closeable</code> says 
	 * so. Further documentation: JTabbedPane
	 * 
	 * 
	 * @see JTabbedPane.add(Component component, Object constraints)
	 */
	public void add(Component component, Object constraints, boolean closeable) {
		super.add(component, constraints);
		setNewestTabCloseable(closeable);
	}

	/**
	 * The new tab is closeable, when the parameter <code>closeable</code> says 
	 * so. Further documentation: JTabbedPane
	 * 
	 * 
	 * @see JTabbedPane.add(Component component, Object constraints, int index)
	 */
	public void add(Component component, Object constraints, int index, boolean closeable) {
		super.add(component, constraints, index);
		setIsCloseableTab(index, closeable);
	}

	/**
	 * Selects the newest tab
	 */
	private void selectNewTab() {
		setSelectedIndex(this.getTabCount()-1);
	}

	/**
	 * Sets the closeability of the newest tab to <code>closeable</code>.
	 * @param closeable true, if the newest tab should be closeable; false otherwise
	 */
	private void setNewestTabCloseable(boolean closeable) {
		setIsCloseableTab(this.getTabCount()-1, closeable);
	}

	/**
	 * Sets the closeability of the tab at <code>index</code> to <code>closeable</code>.
	 * @param closeable true, if the tab should be closeable; false otherwise
	 * @param index the tab's index
	 */
	public void setIsCloseableTab(int index, boolean closeable) {
		if(closeable)
			setTabComponentAt(index, new ButtonTabComponent(this));
	}

	/**
	 * Documentation: JTabbedPane
	 * 
	 *  
	 * @see JTabbedPane#setTitleAt(int, String)
	 * @Override
	 */
	public void setTitle(int index, String title)
	{
		((ButtonTabComponent)this.getTabComponentAt(index)).setTitleLabel(title);
	}

	/**
	 * Private Class for the Close Button
	 */
	class ButtonTabComponent extends JPanel {
		private final JTabbedPane pane;
		private JLabel label;
		private JButton button;

		public ButtonTabComponent(final JTabbedPane pane) {
			//unset default FlowLayout' gaps
			super(new FlowLayout(FlowLayout.LEFT, 0, 0));
			if (pane == null) {
				throw new NullPointerException("TabbedPane is null");
			}
			this.pane = pane;
			setOpaque(false);

			//make JLabel read titles from JTabbedPane
			label = new JLabel() {
				public String getText() {
					int i = pane.indexOfTabComponent(ButtonTabComponent.this);
					if (i != -1) {
						return pane.getTitleAt(i);
					}
					return null;
				}
			};



			add(label);

			//add more space between the label and the button
			label.setBorder(BorderFactory.createEmptyBorder(0, 0, 0, 5));
			//tab button
			button = new TabButton();
			add(button);
			//add more space to the top of the component
			setBorder(BorderFactory.createEmptyBorder(2, 0, 0, 0));

		}

		public void setTitleLabel(String title)
		{
			label.setText(title);
		}

		private class TabButton extends JButton implements ActionListener {
			public TabButton() {
				int size = 17;
				setPreferredSize(new Dimension(size, size));
				setToolTipText("close this tab");
				//Make the button looks the same for all Laf's
				setUI(new BasicButtonUI());
				//Make it transparent
				setContentAreaFilled(false);
				//No need to be focusable
				setFocusable(false);
				setBorder(BorderFactory.createEtchedBorder());
				setBorderPainted(false);
				//Making nice rollover effect
				//we use the same listener for all buttons
				addMouseListener(buttonMouseListener);
				setRolloverEnabled(true);
				//Close the proper tab by clicking the button
				addActionListener(this);



			}

			public void actionPerformed(ActionEvent e) {
				int i = pane.indexOfTabComponent(ButtonTabComponent.this);
				if (i != -1) {
					pane.remove(i);
				}
			}

			//we don't want to update UI for this button
			public void updateUI() {
			}

			//paint the cross
			protected void paintComponent(Graphics g) {
				super.paintComponent(g);
				Graphics2D g2 = (Graphics2D) g.create();
				//shift the image for pressed buttons
				if (getModel().isPressed()) {
					g2.translate(1, 1);
				}
				g2.setStroke(new BasicStroke(2));
				g2.setColor(JCloseTabbedPane.this.closeButtonStandardColor);
				if (getModel().isRollover()) {
					g2.setColor(JCloseTabbedPane.this.closeButtonRolloverColor);
				}
				int delta = 6;
				g2.drawLine(delta, delta, getWidth() - delta - 1, getHeight() - delta - 1);
				g2.drawLine(getWidth() - delta - 1, delta, delta, getHeight() - delta - 1);
				g2.dispose();
			}
		}


		// removed final static
		private MouseListener buttonMouseListener = new MouseAdapter() {
			public void mouseEntered(MouseEvent e) {
				Component component = e.getComponent();
				if (component instanceof AbstractButton) {
					AbstractButton button = (AbstractButton) component;
					button.setBorderPainted(true);
				}
			}

			public void mouseExited(MouseEvent e) {
				Component component = e.getComponent();
				if (component instanceof AbstractButton) {
					AbstractButton button = (AbstractButton) component;
					button.setBorderPainted(false);
				}
			}
		};



	}	


}
 

André Uhres

Top Contributor
Hallo Iron,

danke für Deinen Beitrag und herzlich willkommen bei "java-forum.org"!

Hier noch ein kleiner Hinweis für die Zukunft: anstatt dass wir ein sehr altes Thema wieder "aufwärmen", ist es gewöhnlich besser, ein neues Thema zu eröffnen und gegebenenfalls darin auf das alte Thema zu verweisen.

Gruß.
André
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
E extended Swing Table AWT, Swing, JavaFX & SWT 2
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
M JTabbedPane verändern mit Nimbus Look and Feel AWT, Swing, JavaFX & SWT 1
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 LookAndFeel Nimbus BUG mit JTabbedPane?! AWT, Swing, JavaFX & SWT 5
hdi Swing Problem mit JTabbedPane AWT, Swing, JavaFX & SWT 2
A LookAndFeel Rollover Effekt bei JTabbedPane deaktivieren (Nimbus) AWT, Swing, JavaFX & SWT 8
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
Y LookAndFeel JTabbedPane: Tab-Farbe mit Nimbus setzen AWT, Swing, JavaFX & SWT 3
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
M Elemente in JTabbedPane platzieren AWT, Swing, JavaFX & SWT 7
B Swing JFormattedTextField auf mehreren JPanels in einer JTabbedPane AWT, Swing, JavaFX & SWT 3
K LookAndFeel JTabbedPane mit Icon und CloseButton AWT, Swing, JavaFX & SWT 2
D Swing Probleme bei mit JTabbedPane.getChildren() AWT, Swing, JavaFX & SWT 4
I Swing Randnutzung bei JTabbedPane.LEFT AWT, Swing, JavaFX & SWT 2
ABstraCT JTabbedPane - click wird nicht immer ausgeführt ! AWT, Swing, JavaFX & SWT 10
P JTabbedPane und fill? AWT, Swing, JavaFX & SWT 2
D Swing mehrere JTable in separaten Tabs einer JTabbedPane AWT, Swing, JavaFX & SWT 2
G JTabbedPane transparent AWT, Swing, JavaFX & SWT 2
S Swing JTabbedPane: Resize des JFrame bei Tab wechsel AWT, Swing, JavaFX & SWT 8
thE_29 Swing JTabbedPane Focus von Komponenten außerhalb AWT, Swing, JavaFX & SWT 10
S Scrollbar in einem JTabbedPane AWT, Swing, JavaFX & SWT 4
A Schriftfarbe von jTabbedPane und Button Ändern AWT, Swing, JavaFX & SWT 7
R JTabbedPane Selektion verfolgen? AWT, Swing, JavaFX & SWT 2
byte JTabbedPane - Insets entfernen AWT, Swing, JavaFX & SWT 7
S JTabbedPane child setBounds AWT, Swing, JavaFX & SWT 4
J jTabbedPane mit jPanel füllen AWT, Swing, JavaFX & SWT 14
A JTable im JTabbedPane -> Überschriften werden nicht angez AWT, Swing, JavaFX & SWT 2
V JTabbedPane - keine "Focus"-Box auf selektiertem T AWT, Swing, JavaFX & SWT 2
G JTabbedPane wird groesser wenn man anderen Tab auswaehlt. AWT, Swing, JavaFX & SWT 2
A JTabbedPane Tabwechsel rausfinden AWT, Swing, JavaFX & SWT 2
O JTabbedPane - Selected Color? AWT, Swing, JavaFX & SWT 1
T Wie aktualisiere ich die Contents einer JTabbedPane? AWT, Swing, JavaFX & SWT 3
G JTabbedPane zentiert alles AWT, Swing, JavaFX & SWT 3
P Schließen-Button bei JTabbedPane? AWT, Swing, JavaFX & SWT 2

Ähnliche Java Themen

Neue Themen


Oben