Java Swing: Ajouter des onglets dans JPanels
J'ai une série d'onglets, mais je veux, puis ajouter de nouveaux onglets dans le panneau, il affiche, comme si le but de reproduire un menu de type ruban. J'ai à peu près savoir ce qui doit être fait (changer le type de retour de la makeTextPanel fonction), mais ne savent pas comment de sorte que toute aide serait appréciée.
package components;
import javax.swing.JTabbedPane;
import javax.swing.ImageIcon;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JFrame;
import javax.swing.JComponent;
import javax.swing.SwingUtilities;
import javax.swing.UIManager;
import java.awt.BorderLayout;
import java.awt.Dimension;
import java.awt.GridLayout;
import java.awt.event.KeyEvent;
public class ribbonMenu extends JPanel {
public ribbonMenu() {
super(new GridLayout(1,1));
JTabbedPane tabbedPane = new JTabbedPane();
JTabbedPane tabbedPane2 = new JTabbedPane();
JComponent panel1 = makeTextPanel("Panel #1");
tabbedPane.addTab("Tab 1", panel1);
panel1.setPreferredSize(new Dimension(600, 400));
JComponent panel2 = makeTextPanel("Panel #2");
tabbedPane.addTab("Tab 2", panel2);
JComponent panel3 = makeTextPanel("Panel #3");
tabbedPane.addTab("Tab 3", panel3);
add(tabbedPane);
tabbedPane.setTabLayoutPolicy(JTabbedPane.SCROLL_TAB_LAYOUT);
}
protected JComponent makeTextPanel (String text) {
JPanel panel = new JPanel(false);
JLabel filler = new JLabel(text);
filler.setHorizontalAlignment(JLabel.CENTER);
panel.setLayout (new GridLayout(1,1));
panel.add(filler);
return panel;
}
private static void createAndShowGUI() {
JFrame frame = new JFrame ("ribbonMenu");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.add(new ribbonMenu(), BorderLayout.CENTER);
frame.pack();
frame.setVisible(true);
}
public static void main(String[] args) {
SwingUtilities.invokeLater(new Runnable() {
public void run() {
UIManager.put("swing.boldmetal", Boolean.FALSE);
createAndShowGUI();
}
});
}
}
Grâce
- Pourquoi voudriez-vous jamais eu envie de passer "false" pour le constructeur d'un Composite?
Vous devez vous connecter pour publier un commentaire.
Pourquoi Vous avez besoin de changer le type de retour?
Au lieu de cela
utilisation
Et pour les autres onglets, Vous pouvez encore ajouter
JTabbedPane
dans le panneau