什么是JFrame关闭的正确方法,就像用户点击X关闭按钮或按下Alt+ F4(在Windows上)一样?
我通过以下方式设置我的默认关闭操作:
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Run Code Online (Sandbox Code Playgroud)
它完全符合我想要的上述控件.这个问题与此无关.
我真正想要做的是使GUI的行为方式与按下X关闭按钮会使其表现相同.
假设我要扩展WindowAdaptor然后添加我的适配器实例作为监听器addWindowListener().我想看到的调用相同的序列通过windowDeactivated(),windowClosing()以及windowClosed()作为将与出现X关闭按钮.可以这么说,撕毁窗户就像告诉它撕裂自己一样.
这段代码确实在各方面工作,但现在它并没有完全关闭,它似乎在我点击窗口上的"X"时挂起.在我靠近后,如果我最小化屏幕,然后最大化它,它只是黑色.我可以让它完全关闭的唯一方法是退出我的IDE Eclipse.
在此之前,我有不同的外观和感觉.我偷了一些GUI的代码,我在netbeans中制作它使它看起来比我手工做的更好.所以我认为它与"灵气"的外观和感觉有关,但也许我没有正确关闭其他物体,现在它是一个问题?
static CLUtilCompact app = null; // this
static AuxPPanel aux = null; // JPanel
static StatusPanel stat = null; // JPanel
static UserActPanel user = null; // JPanel
static InputPanel input = null; // JPanel
static Automator auto = null;
//public class Automator extends Thread
// implements NativeMouseInputListener, NativeKeyListener
public CLUtilCompact()
{
aux = new AuxPPanel();
stat = new StatusPanel();
user = new UserActPanel();
auto = new Automator();
input = new InputPanel();
GlobalScreen.getInstance().addNativeKeyListener(auto);
GlobalScreen.getInstance().addNativeMouseListener(auto);
GlobalScreen.getInstance().addNativeMouseMotionListener(auto);
auto.start();
} …Run Code Online (Sandbox Code Playgroud) 我有一个框架,实例化另一个框架,但我不想在实例化框架上使用close(x)按钮.所以我创建了一个按钮.我怎么编码这个按钮可以用来关闭实例化的框架而不退出JVM.
我希望在输入输入并单击添加按钮后关闭窗口.我还想要一条消息,通知用户输入数据已保存.此代码链接到将存储输入的数据库对象.
public class Add extends JFrame
implements ActionListener {
/** {@link JTextField} where the user name is entered */
JTextField Inputusername = new JTextField(7);
/** {@link JTextField} where the user age is entered */
JTextField age = new JTextField(2);
/** {@link JTextField} where the user ID is entered */
JTextField inputuserid = new JTextField(4);
/** Add Client button */
JButton addnewclient = new JButton("Add Client");
/** male Jradiobutton */
JRadioButton male = new JRadioButton("Male");
/** female Jradiobutton */
JRadioButton female …Run Code Online (Sandbox Code Playgroud)