前提・実現したいこと
ボタンの大きさが変更されなくて困っています。どうすればいいのでしょうか?
該当のソースコード
java
1コード 2 3import javax.swing.*; 4import java.awt.Color; 5import java.awt.Container; 6import java.awt.FlowLayout; 7import java.awt.BorderLayout; 8import java.awt.Dimension; 9 10class JButtonSample extends JFrame{ 11 12 public static void main(String[] args){ 13 JButtonSample frame = new JButtonSample(); 14 15 frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 16 frame.setSize(500, 400); 17 frame.setTitle("タイトル"); 18 frame.setVisible(true); 19 } 20 21 JButtonSample(){ 22 JButton button1 = new JButton("Button1"); 23 button1.setPreferredSize(new Dimension(100, 100)); 24 JButton button2 = new JButton("Button2"); 25 button2.setPreferredSize(new Dimension(100,100)); 26 JButton button3 = new JButton("Button3"); 27 button3.setPreferredSize(new Dimension(100,100)); 28 JButton button4 = new JButton("Button4"); 29 JButton button5 = new JButton("Button5"); 30 JButton button6 = new JButton("Button6"); 31 32 JPanel p1 = new JPanel(); 33 p1.setLayout(new BoxLayout(p1, BoxLayout.X_AXIS)); 34 p1.add(button1); 35 p1.add(button2); 36 p1.add(button3); 37 38 JPanel p2 = new JPanel(); 39 p2.setLayout(new BoxLayout(p2, BoxLayout.Y_AXIS)); 40 p2.add(button4); 41 p2.add(button5); 42 p2.add(button6); 43 44 JPanel p3 = new JPanel(); 45 p3.setBackground(Color.blue); 46 p3.setPreferredSize(new Dimension(500, 100)); 47 48 JPanel p4 = new JPanel(); 49 p4.setBackground(Color.blue); 50 p4.setPreferredSize(new Dimension(500, 100)); 51 52 getContentPane().add(p1, BorderLayout.CENTER); 53 getContentPane().add(p2, BorderLayout.EAST); 54 getContentPane().add(p3, BorderLayout.NORTH); 55 getContentPane().add(p4, BorderLayout.SOUTH); 56 } 57}
BoxLayoutの場合setPreferredSizeでなくsetMaximumSizeにする必要があるようです。
ちょっとわけわかんないですね^^;
setMaximumSizeで試したところ、無事解決しました!ありがとうございました
回答1件
あなたの回答
tips
プレビュー