Java JDialog未显示最小化/关闭按钮
在研究这个问题时,似乎大多数人都想做相反的事情(即删除最小化/关闭按钮)。 我使用重复出现的Java JDialog未显示最小化/关闭按钮,java,swing,user-interface,jdialog,Java,Swing,User Interface,Jdialog,在研究这个问题时,似乎大多数人都想做相反的事情(即删除最小化/关闭按钮)。 我使用重复出现的setUndercorated和setDefaultCloseOperation 这是我的密码: private class TestDialog extends JDialog { public static final String title_ = "Test Dialog"; public TestDialog(JFrame parent) { supe
setUndercorated
和setDefaultCloseOperation
这是我的密码:
private class TestDialog extends JDialog
{
public static final String title_ = "Test Dialog";
public TestDialog(JFrame parent)
{
super(parent,title_,true);
setMinimumSize(new Dimension(500,500));
setLocationRelativeTo(null);
setUndecorated(false);
setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
}
}
当我显示对话框时,我得到以下信息:
其他信息:操作系统:Ubuntu
Java版本:1.7.0_55不清楚哪里出了问题,但下面的完整示例适用于Ubuntu 12、Java 6;这可能有助于你解决这个问题。请注意,所有s都必须构建在上
如果您更改以下行,我已找到某种临时解决方案:
super(parent, title, true);
到
使用GNOME时,窗口关闭按钮将出现。但是,我不确定这会导致什么其他问题。是否要删除关闭/最小化按钮?为什么不从JWindow而不是JDialog继承呢?我希望显示关闭/最小化按钮。考虑到JWindow没有嵌入标题栏,我认为JWindow不适合。使用JFrame而不是JDialog对于我的上下文,JDialog更适合。主要针对ModailityTanks,感谢您的回复@trashgood。试过你的例子后,我仍然没有得到你似乎得到的关闭按钮。我安装了jdk的早期版本(1.6.0),但仍然没有安装。我现在唯一能想到的是Ubuntu 14.04和/或GNOME的问题。@Harry:在使用Java 7.OK的Ubuntu 14上看起来是一样的。这似乎是GNOME外壳的问题。当我切换到Unity(Ubuntu中的默认设置)时,它可以工作。谢谢你的帮助@trashgod@Harry当前位置你是否最终找到了一个解决这个问题的方法,而不是走向统一?我现在也有同样的问题。@Fooble:恐怕没有。右键单击对话框标题区域并选择“关闭”是我找到的唯一解决方案…我很惊讶它可以编译。我得到一个“模棱两可的构造函数”错误,因为有多个构造函数与该签名匹配。然而,我找到了一种解决方法:
super(null,title,Dialog.ModalityType.MODELESS)代码>我的错,我自己实际使用了Dialog.ModalityType.MODELESS。我从原始示例复制了代码,但忘记更改最后一个参数。
super(parent, title, true);
super(null, title, Dialog.ModalityType.MODELESS);