0

これが使用する私のコードですGridbagLayout

public IntroPanel(){
    JPanel intro = new JPanel(new GridBagLayout());
    JLabel label1 = new JLabel("Test test test");
    label1.setFont(new Font("Helvetica", Font.PLAIN, 40));
    label1.setHorizontalAlignment(SwingConstants.LEFT);
    JLabel label2 = new JLabel("test2 test2 test2");

    setPreferredSize(new Dimension(640,480));
    GridBagConstraints gbc = new GridBagConstraints();

    gbc.gridx = 10;
    gbc.gridy = 10;
    gbc.weightx = 0;
    add(label1, gbc);

    gbc.gridx = 20;
    gbc.gridy = 10;
    add(label2, gbc);
}

gridxgridy、をすべて変更しGridBagConstraintsて整列させましたが、何も機能していません。NORTHEASTグリッド制約も機能していません。誰でも助けることができますか?独自の GUI を作成する方法を学習する..

メインコーディングはこちら

public static void main(String[] args) {
    JFrame frame = new JFrame("Title111111111");
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

    JTabbedPane tp = new JTabbedPane();

    tp.addTab("Intro", new IntroPanel());
    tp.addTab("Catalogue", new CataloguePanel());

    JPanel panel = new JPanel();
    panel.setBackground(Color.WHITE);

    frame.add(panel);
    frame.add(tp);
    frame.pack();

    frame.setVisible(true);
}
4

1 に答える 1

4

この線

add(label1, gbc);

this( )に追加されIntroPanelます。

あなたがおそらく意味するのはこれです:

intro.add(label1, gbc);

編集:

s のsetLayout(new GridBagLayout());前に追加してみてくださいadd

于 2013-05-01T15:14:42.690 に答える