如何设置按钮的大小?
如何设置按钮的大小?
我将我的按钮放在一个使用GridLayout的JPane中。然后我将JPanel放入另一个使用BoxLayout.Y_AXIS的JPanel中。我想让GridLayout中的按钮呈正方形。我使用tmp.setSize(30,30)但它不起作用。我还尝试使用new GridLayout(X, Y, 4, 4)
,但我无法弄清楚X和Y是什么。那么,正确的方法是什么呢?
添加:
我仍然无法解决这个问题。这是我尝试做的代码:
import javax.swing.*; import java.awt.*; public class PanelModel { public static void main(String[] args) { JFrame frame = new JFrame("Colored Trails"); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); JPanel mainPanel = new JPanel(); mainPanel.setLayout(new BoxLayout(mainPanel, BoxLayout.Y_AXIS)); JPanel firstPanel = new JPanel(); firstPanel.setLayout(new GridLayout(4, 4)); JButton btn; for (int i=1; i<=4; i++) { for (int j=1; j<=4; j++) { btn = new JButton(); btn.setPreferredSize(new Dimension(100, 100)); firstPanel.add(btn); } } JPanel secondPanel = new JPanel(); secondPanel.setLayout(new GridLayout(5, 13)); for (int i=1; i<=5; i++) { for (int j=1; j<=13; j++) { btn = new JButton(); btn.setPreferredSize(new Dimension(40, 40)); secondPanel.add(btn); } } mainPanel.add(firstPanel); mainPanel.add(secondPanel); frame.add(mainPanel); frame.setSize(400,600); frame.setVisible(true); } }
问题是Java试图使firstPanel
和secondPanel
的宽度相等!此外,Java还试图填充窗口的所有高度。如何去除这种行为?