gpt4 book ai didi

java - JDialog在Windows 10上有一个隐式的最小宽度,如何绕过它?

转载 作者:行者123 更新时间:2023-12-01 19:45:37 25 4
gpt4 key购买 nike

我似乎无法使 JDialog 小于 Windows 10 上的最小宽度(观察到 java 7 及以上版本)。最小宽度似乎是 230px,不可能让它更小,即使指定新的最小尺寸,如下代码所示:

import javax.swing.*;
import java.awt.*;

public class TestDialog {
public TestDialog() {
JDialog testDialog = new JDialog();
testDialog.setSize(new Dimension(10, 100));
testDialog.setMinimumSize(new Dimension(10, 100));
testDialog.setLocationRelativeTo(null);
testDialog.setVisible(true);
}

public static void main(String args[]) {
new TestDialog();
}
}

minimum width jdialog

如何强制 JDialog 小于该值?

最佳答案

问题似乎出在默认的外观上。
当我按照 Hovercraft Full Of Eels 的建议设置 testDialog.setUndecorated( true ); 后尝试设置不同的装饰风格时我得到了一个非常狭窄的装饰对话框:

    class TestDialog {

public TestDialog() {
JDialog testDialog = new JDialog();
testDialog.setUndecorated( true );
testDialog.getRootPane( ).setWindowDecorationStyle(JRootPane.PLAIN_DIALOG );
testDialog.getContentPane().add(makeContent());
testDialog.setLocationRelativeTo(null);
testDialog.pack();
testDialog.setVisible(true);
}

private JPanel makeContent(){
JPanel pane = new JPanel(new GridLayout(0, 1));
pane.add(new JLabel(" 1 "));
pane.add(new JLabel(" 2 "));
pane.add(new JLabel(" 3 "));
return pane;
}

public static void main(final String args[]) {
new TestDialog();
}
}

enter image description here

关于java - JDialog在Windows 10上有一个隐式的最小宽度,如何绕过它?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53511389/

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