【问题标题】:basic java gui program [closed]基本的java gui程序[关闭]
【发布时间】:2011-11-02 16:45:45
【问题描述】:

我需要帮助编写一个 GUI 应用程序:

• 当试图关闭窗口时,应通过 对话框以确认他们确实希望终止应用程序,通过 提供 y(是)或 n(否)指示。如果输入“y”,则应用程序 应该立即终止,如果输入“n”,它应该保持可见。 我几乎把它关闭了,但是在 JOptionPane.showConfirmDialog(); 上单击 no 后,我无法让窗口保持可见状态;

• 当用户通过单击相应的图标来最小化窗口时,会显示一条消息 对话框应该显示“最小化窗口”

• 当用户恢复窗口时,一个消息对话框应该 出现“正在恢复窗口”。 这对我有很大的帮助。

【问题讨论】:

  • 您是否参加过教程,尤其是那些涵盖ComponentListenerWindowListener 的教程?如果是这样,当您尝试按照他们的建议进行操作时,什么不起作用?你能告诉我们你的代码吗?
  • 你问了很多问题。尝试隔离它们并尽可能具体。

标签: java swing user-interface joptionpane windowlistener


【解决方案1】:

对于问题的第一部分:您可以将 WindowListener 添加到应用程序的顶级 JFrame,其中包含以下内容:

addWindowListener(new WindowAdapter() {
    public void windowClosing(WindowEvent e) {
        doExit(); // Will not return if user clicks yes.
        super.windowClosing(e);
    }
});

...然后实现doExit()如下:

private void doExit() {
    int yesNo = JOptionPane.showConfirmDialog(this, "Are you sure you wish to exit?", "Confirm", JOptionPane.YES_NO_OPTION, JOptionPane.QUESTION_MESSAGE);

    if (yesNo == JOptionPane.YES_OPTION) {
        System.exit(0);
    }
}

另外你需要在初始化你的应用时添加如下方法调用:

mainAppFrame.setDefaultCloseOperation(WindowConstants.DO_NOTHING_ON_CLOSE);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-03-11
    • 1970-01-01
    • 2013-05-20
    • 2013-04-21
    • 1970-01-01
    • 2016-01-17
    • 2012-05-12
    相关资源
    最近更新 更多