0
ここでは多くのテーマを読んでいますが、私が望むレイアウトでウィンドウを作ることはできません。 私は単純にすべての私のグラフィックオブジェクトは、ここで最初の写真のように行のスタイルになりたい:http://docs.oracle.com/javase/tutorial/uiswing/layout/box.htmlswing boxLayout not working
私はGridLayoutのを試みたが、それはまだ私の最初のボタンの巨人を作り、私はテキストフィールドを追加すると、その後、それが小さくなってきました小さく!私は、行ごとに一つのボタンを持ちたい
public class TestScrollPane extends JFrame implements ActionListener{
Dimension dim = new Dimension(200 , 50);
JButton button;
JPanel panel = new JPanel();
JScrollPane scrollpane = new JScrollPane(panel);
public TestScrollPane(){
scrollpane.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED);
this.add(scrollpane);
//panel.setLayout(new BoxLayout(panel, BoxLayout.Y_AXIS));
this.setSize(300, 400);
this.setVisible(true);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setLocationRelativeTo(null);
button = new JButton("click me");
button.setPreferredSize(dim);
panel.add(button);
button.addActionListener(this);
}
public void actionPerformed(ActionEvent e){
if(e.getSource() == button){
JTextField txt = new JTextField(); // we add a new button
txt.setPreferredSize(dim);
panel.add(txt);
SwingUtilities.updateComponentTreeUI(this); // refresh jframe
}
}
public static void main(String[] args){
TestScrollPane test = new TestScrollPane();
}
}
:
は、ここですべての輸入せずに私のコードです。
感謝の男は、私はそれがpreferredSizeがについて何かだったことを知っていたが、私はbutton.setPreferredSizeが(薄暗い)と思った;:
代わりにあなたが追加したときに/あなたが使用する必要があります目に見えるGUIからコンポーネントを削除十分でした。 – zogota
@zogota 'しかし、私はそれがbutton.setPreferredSize(dim)と思った。十分だった」 - その声明を取り除くべきだ。任意のコンポーネントの推奨サイズを制御しようとしてはいけません。 – camickr
チップをありがとう!私は_button.setMinimumSize(dim)_を試してみましたが、テキストフィールドも同じでしたが、テキストフィールドを追加すると、ボタンのサイズが小さくなり、_dim_ Dimensionよりも劣る特定のサイズになります。何が起こっている ? – zogota