java jdialog 取消关闭按钮,JDialog不显示最小/关闭按钮

When researching the problem, it seems most people are wanting to do the opposite (i.e remove the minimize/close button).

I've had no success using the reoccurrent setUndecorated and setDefaultCloseOperation

Here is my code:

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);

}

}

When I display the dialog I get the following:

wDU13.png

Other info:

OS: Ubuntu

Java version: 1.7.0_55

解决方案

It's not clear where things may have gone awry, but the complete example below works on Ubuntu 12, Java 6; it may help you pin down the problem. Note that all top-level containers must be constructed on the event dispatch thread.

hGjhK.png

import java.awt.Dimension;

import java.awt.EventQueue;

import javax.swing.JDialog;

import javax.swing.JFrame;

import javax.swing.JPanel;

import javax.swing.WindowConstants;

public class TestDialog extends JDialog {

public static final String title = "Test Dialog";

public TestDialog(JFrame parent) {

super(parent, title, true);

add(new JPanel(){

@Override

public Dimension getPreferredSize() {

return new Dimension(320, 240);

}

});

pack();

setLocationRelativeTo(null);

setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);

}

public static void main(String[] args) {

EventQueue.invokeLater(new Runnable() {

@Override

public void run() {

new TestDialog(null).setVisible(true);

}

});

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值