4

Swing を使用して、これらの JComponents をコンテンツ ペインの中央にフォームのように配置する方法

        panel1.add(l1);
        panel1.add(c1);
        panel1.add(l2);
        panel1.add(c2);
        panel1.add(b4);
        panel1.add(b5);
        frame1.getContentPane().add(panel1);

私を助けてください

4

4 に答える 4

6

最初にコンテナ内のコンポーネントのレイアウトチュートリアルを読んでみませんか?私はこのことわざを乱用しますが、猫の皮を剥ぐ方法は常に複数あります


これは、BoxLayoutインスタンスで使用する不要な例です-setAlignmentX(...)JComponent

public final class StackComponentsDemo {
    public static void main(String[] args){
        SwingUtilities.invokeLater(new Runnable(){
            @Override
            public void run() {
                createAndShowGUI();             
            }
        });
    }

    private static void createAndShowGUI(){
        final JFrame frame = new JFrame();
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

        final JPanel panel = new JPanel();
        panel.setLayout(new BoxLayout(panel, BoxLayout.Y_AXIS));

        panel.add(new DisabledJButton());
        panel.add(new DisabledJButton());
        panel.add(new DisabledJButton());
        panel.add(new DisabledJButton());
        panel.add(new DisabledJButton());

        frame.add(panel);
        frame.pack();
        frame.setLocationRelativeTo(null);
        frame.setVisible(true);
    }

    private static final class DisabledJButton extends JButton{
        public DisabledJButton(){
            super("Disabled");
            setEnabled(false);
            setAlignmentX(Component.CENTER_ALIGNMENT);
        }
    }
}

ここに画像の説明を入力してください

于 2011-08-09T18:38:40.047 に答える
2

必要に応じてSpringLayoutを確認してください。そうでない場合は、おそらくGridBagLayoutで十分でしょう。

シンプルなフォームのようなレイアウトに SpringLayout を使用する例を次に示します。

于 2011-08-09T18:46:26.293 に答える
1

ボックスレイアウトマネージャーの使用をお勧めします。IDEを使用せずにレイアウトマネージャーを使用するには、ある程度の時間と練習が必要です。詳細については、http://download.oracle.com/javase/tutorial/uiswing/layout/box.htmlを参照してください。

于 2011-08-09T18:40:14.157 に答える
0

他のすべてが失敗した場合は、いつでも試すことができます: http://code.google.com/intl/nl-NL/javadevtools/wbpro/layoutmanagers/swing/index.html

ウィンドウ ビルダーには本当に感銘を受けました。きれいなコードを生成し、Eclipse に簡単に統合できます。

于 2011-08-09T19:29:47.523 に答える