このインターフェースに最も適したレイアウトはどれですか? 試してみましたが、ボタンを正しい位置に配置FlowLayout
できません。SUBMIT
質問する
612 次
3 に答える
2
私はmiglayoutをお勧めします、それは非常に使いやすく、それは私がそれに投げているものを常に処理します。
この場合、2つのパネルを作成します。最初のパネルには、miglayoutコンストラクターのパラメーターとして「wrap3」制約があり、2番目のパネルには「alignxcenter、alignycenter」制約が追加されたボタンが1つだけあります。
次に例を示します。
public class TestApplet extends JApplet{
@Override
public void init() {
super.init();
setSize(400, 300);
setLayout(new MigLayout("fill, insets 0"));
JPanel leftPanel = new JPanel(new MigLayout("wrap 3"));
for (int i = 0; i < 9; i++) {
leftPanel.add(new JButton(""+i));
}
add(leftPanel);
JPanel rightPanel = new JPanel(new MigLayout());
rightPanel.add(new JButton("submit"), "alignx center, aligny center");
add(rightPanel);
}
}
ボタンの番号を必要に応じて並べ替えるだけです。
于 2013-02-26T16:04:36.590 に答える
1
- 2 つの列を持つ最初のグリッド レイアウト。
- 最初の列に panal1 を追加し、2 番目の列に submit with を追加し
BorderLayout.CENTER
ます。 - その panal1 では、3x3 グリッド レイアウトを使用できます。
于 2013-02-26T15:55:03.450 に答える
0
私はこれを JFrame で試しましたが、アプレットでも同じことができます。
1 行 2 列のグリッドを作成します。
ページ軸を使用して 2 番目のパネルにボックス レイアウトを作成し、中央にボタンがある垂直方向の接着剤があることを確認します。3x3 のグリッドを作成し、ボタンを追加します。
コードサンプル:
JFrame frame = new JFrame();
frame.setLayout(new GridLayout(1, 2));
JPanel leftPanel = new JPanel(new GridLayout(3, 3));
for(int i=0;i<9;i++)
{
JButton button = new JButton();
button.setText(i+"");
leftPanel.add(button);
}
frame.add(leftPanel);
JPanel rightPanel = new JPanel();
BoxLayout layout = new BoxLayout(rightPanel, BoxLayout.PAGE_AXIS);
rightPanel.setLayout(layout);
JButton button = new JButton("Submit");
button.setAlignmentX(
Component.CENTER_ALIGNMENT);
rightPanel.add(Box.createVerticalGlue()); //Ensure this order
rightPanel.add(button);
rightPanel.add(Box.createVerticalGlue());
frame.add(rightPanel);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
于 2013-02-26T16:32:26.270 に答える