java - 添加 Swing 组件时调整窗口大小

标签 java swing resize jframe

我有一个由一些 Swing 组件组成的 JFrame。一个按钮有一个 ActionListener,用于向框架添加一个额外的按钮(以便用户可以添加更多信息)。 现在我希望每当添加新组件时窗口(jframe)就调整大小。现在,每当添加新组件时,组件都会变小,但框架保持相同的大小。

这是 Action 监听器的代码:

addAnswerButtonMA.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent arg0) {
            answerFieldsMA.add(new JTextField());
            checkBoxesMA.add(new JCheckBox());
            multipleanswerPanel.add(answerFieldsMA.get(answerFieldsMA.size() - 1));
            multipleanswerPanel.add(checkBoxesMA.get(checkBoxesMA.size() - 1));

            multipleanswerPanel.revalidate();
            validate();
            }
        });

一些背景(不确定是否需要): 我正在制作一个测验程序,管理员可以使用单独的图形用户界面向测验添加问题。如果他想添加多项答案问题,他可以通过单击 addAnswerbuttonMA 来添加额外的答案,以显示额外的字段和复选框。字段代表答案,复选框代表答案是否正确。

最佳答案

打包框架解决了这个问题。

addAnswerButtonMA.addActionListener(new ActionListener() {
    public void actionPerformed(ActionEvent arg0) {
        answerFieldsMA.add(new JTextField());
        checkBoxesMA.add(new JCheckBox());
        multipleanswerPanel.add(answerFieldsMA.get(answerFieldsMA.size() - 1));
        multipleanswerPanel.add(checkBoxesMA.get(checkBoxesMA.size() - 1));

        multipleanswerPanel.revalidate();
        validate();
        pack()
        }
    });

关于java - 添加 Swing 组件时调整窗口大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23221528/

相关文章:

java - "if"语句的多重含义

java - 在 JTabbedpane 选项卡上添加图标

image - BlackBerry - 如何调整大小和存储图像?

java - Android - 每 X 小时解锁一个按钮

java - 将 Future 转换为 Mono

java - 将 JTable 的单列放入滚动 Pane 中

winforms - 如何根据分辨率调整控件大小?

c++ - 调整图像大小 OpenCV

java - 将节点添加到链表的末尾

Java Swing JSlider addChangeListener 错误