我有3个按钮,每个按钮都有一些功能,我用BOX来创建这些按钮。 每个按钮都根据其中的文本设置为不同的大小。 我希望所有按钮都有相同的尺寸。
我尝试使用preferredSize()
,但它没有做任何改动。
以下是我的示例代码。
public class MyMain extends JPanel {
private static final long serialVersionUID = 1L;
static JButton jbt1 = new JButton("Button1");
static JButton jbt2 = new JButton("Button2");
static JButton jbt3 = new JButton("Button3");
static JTextArea textArea = new JTextArea(2, 10);
static JTextArea OutputFormat = new JTextArea(2, 20);
static JTextArea OtherFormat = new JTextArea(2, 20);
static JScrollPane scrollPane = new JScrollPane(textArea);
public MyMain() {
Box box = Box.createVerticalBox();
textArea.setText("WELCOME TO CREATOR");
OutputFormat.setText("Some Text here");
OtherFormat.setText("Some More Text Here ");
box.add(Box.createVerticalStrut(10));
box.add(OutputFormat);
box.add(Box.createVerticalStrut(20));
box.add(OtherFormat);
box.add(Box.createVerticalStrut(20));
box.add(jbt1);
box.add(Box.createVerticalStrut(20));
box.add(jbt2);
box.add(Box.createVerticalStrut(20));
box.add(jbt3);
box.add(Box.createVerticalStrut(5));
box.add(textArea);
box.add(Box.createVerticalStrut(10));
add(box);
}
public static void createAndShowGui() {
JFrame.setDefaultLookAndFeelDecorated(true);
JFrame frame = new JFrame("TRANSLATOR");
SwingUtilities.updateComponentTreeUI(frame);
frame.getContentPane().setBackground(Color.green);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(500, 350);
frame.setLocationRelativeTo(null);
frame.add(new PBIFile());
frame.setLocationByPlatform(true);
frame.setVisible(true);
Dimension dim = Toolkit.getDefaultToolkit().getScreenSize();
frame.setLocation(dim.width / 2 - frame.getSize().width / 2, dim.height / 2 - frame.getSize().height / 2);
}
public static void main(String[] args) {
SwingUtilities.invokeLater(new Runnable() {
public void run() {
createAndShowGui();
}
});
textArea.setEditable(false);
textArea.setLineWrap(true);
jbt1.addActionListener(new Action1());
jbt2.addActionListener(new Action2());
jbt3.addActionListener(new Action3());
}
static class Action1 implements ActionListener {
public void actionPerformed(ActionEvent e) {
}
}
static class Action2 implements ActionListener {
public void actionPerformed(ActionEvent e) {
}
}
static class Action3 implements ActionListener {
public void actionPerformed(ActionEvent e) {
}
}
}
有人可以帮我设置所有按钮的按钮大小不变。 目前,我看到每个按钮的大小不同,具体取决于按钮名称中的字符数。