【问题标题】:Box Layout components move when button is visible and invisibleBox Layout 组件在按钮可见和不可见时移动
【发布时间】:2016-12-29 20:23:58
【问题描述】:
JPanel panel = new JPanel();

panel.setLayout(new BoxLayout(panel, BoxLayout.PAGE_AXIS));

JPanel topPanel = new JPanel(new FlowLayout());

.....

JPanel centrePanel = new JPanel(new FlowLayout(10, 0));

........

JScrollPane scrollPane = new JScrollPane(table);

scrollPane.setPreferredSize(new Dimension(100, 160));

centrePanel.add(glListScrollPane);

........

........


JPanel bottomPanel = new JPanel();

bottomPanel.setLayout(new GridLayout(0, 2));

......

........

panel.add(topPanel, BorderLayout.CENTER);

panel.add(centrePanel, BorderLayout.CENTER);

panel.add(bottomPanel, BorderLayout.CENTER);

frame.add(panel);

frame.add(standardButtonPanel);


public void lockScreen(boolean editable) {

standardButtonPanel.button1.setVisible(editable);

......

}

在进行编辑和取消编辑时。面板正在稍微改变它的位置。 我使用了 BoxLayout,因为我想让组件有自己的大小,并且用户也可以调整屏幕大小。 还有其他方法吗?在哪里可以解决布局问题?

【问题讨论】:

    标签: java swing layout boxlayout


    【解决方案1】:

    不要使用setVisible,而是尝试使用setEnabled,因为它不会隐藏按钮(因此不会影响用户界面),但会使最终用户无法按下按钮。

    【讨论】:

    • 我们在整个产品中都有标准按钮和相同的功能,我无法更改此功能。现在我尝试了 panel.add(Box.createVerticalGlue());但它也没有帮助。
    猜你喜欢
    • 2021-09-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-03-26
    • 2012-06-15
    • 1970-01-01
    • 2017-02-26
    • 1970-01-01
    相关资源
    最近更新 更多