gpt4 book ai didi

java - JDialog - 如何设置固定宽度和可变高度?

转载 作者:塔克拉玛干 更新时间:2023-11-01 22:51:24 25 4
gpt4 key购买 nike

我有一个 JDialog 对象,很简单,必须是 200 像素宽,无论其内容如何。

我需要能够动态调整高度,以始终确保显示所有内容。我该怎么做?

  • 我已经尝试覆盖 JDialog.getPreferredSize() 方法,但我不知道要为高度值添加什么。
  • 我已经尝试检查 main JPanel isValid()isShowing() 是否都返回 true,只要面板的一部分实际上是可见的。

最佳答案

首选大小仅适用于布局管理器,它们不能限制窗口大小。

window peer 有一个强制最小大小的方法,所以它工作得很好,但是除了监听调整大小和重置到所需大小之外没有任何最大大小:

    setMinimumSize(new Dimension(200, Integer.MAX_VALUE));
addComponentListener(new ComponentAdapter() {
@Override
public void componentResized(ComponentEvent e) {
Dimension size = getSize();
size.width = 200;
setSize(size);
}
});

关于java - JDialog - 如何设置固定宽度和可变高度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12194471/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com