Я понял понятия, стоящие за JTabbedPane и GridBagLayout. Однако, когда я пытаюсь использовать оба вместе, я терплю неудачу. То есть, когда я использую GBLayout, мои другие вкладки (каждая вкладка имеет разную функциональность) не отображаются. Пожалуйста помоги. Спасибо.JTabbedPane с GridBagLayout
Вот мой код:
import java.awt.*;
import javax.swing.*;
public class Tryout extends JFrame {
private static final long serialVersionUID = 1L;
private JTabbedPane tabbedPane;
private JPanel panel1;
private JPanel breakfast;
public Tryout()
{
JPanel topPanel = new JPanel();
topPanel.setLayout(new BorderLayout());
getContentPane().add(topPanel);
createPage1(); //Tab1
createPage2(); //Tab2
tabbedPane = new JTabbedPane();
tabbedPane.addTab("Input Form", panel1);
tabbedPane.addTab("Breakfast", breakfast);
topPanel.add(tabbedPane, BorderLayout.CENTER);
}
public void createPage1()
{
/* Works fine when I un-comment this
panel1 = new JPanel();
panel1.setLayout(new BorderLayout());
panel1.add(new JLabel("Hi"), BorderLayout.NORTH);
*/
//Tabs not getting displayed if I add the code below with GBLayout
JPanel panel = new JPanel(new GridBagLayout());
this.getContentPane().add(panel);
JLabel label = new JLabel("Form");
JPanel tableButtonPanel = new JPanel();
tableButtonPanel.add(new JButton("Add Thing"));
tableButtonPanel.add(new JRadioButton("Delete Thing"));
tableButtonPanel.add(new JButton("Modify Thing"));
GridBagConstraints gbc = new GridBagConstraints();
gbc.gridx = 0;
gbc.gridy = 0;
panel.add(label, gbc);
gbc.gridx = 0;
gbc.gridy = 2;
panel.add(tableButtonPanel, gbc);
}
public void createPage2()
{
breakfast = new JPanel();
breakfast.setLayout(new BorderLayout());
breakfast.add(new JButton("North"), BorderLayout.NORTH);
breakfast.add(new JButton("South"), BorderLayout.SOUTH);
breakfast.add(new JButton("East"), BorderLayout.EAST);
breakfast.add(new JButton("West"), BorderLayout.WEST);
breakfast.add(new JButton("Center"), BorderLayout.CENTER);
}
public static void main(String args[]) {
Tryout ex = new Tryout();
ex.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
ex.setSize(750,750);
ex.setVisible(true);
ex.setTitle("Recipe Tracker");
ex.setBackground(Color.gray);
}
}
выручал меня. Большое спасибо. Однако сейчас у меня мало других проблем. – trollster