【问题标题】:Give a Yes/No option in a Java GUI在 Java GUI 中给出是/否选项
【发布时间】:2011-03-08 17:14:58
【问题描述】:

我想更改下面的代码,以在用户单击“X”时显示是或否选项,但恐怕我的 java 新手技能还没有延伸到它。请问有什么建议吗?我想尽可能地保持下面的代码完整,以便了解需要做哪些不同的事情以供将来参考。

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

public class WindowExit extends WindowAdapter
{
public void windowClosing(WindowEvent e)
{
    JOptionPane.showMessageDialog( null, "Are you sure you want to close?" );
    System.exit(0);
}
}

【问题讨论】:

    标签: java swing joptionpane


    【解决方案1】:

    使用showConfirmDialog如下:

    int reply = JOptionPane.showConfirmDialog(null, "Are you sure you want to close?", "Close?",  JOptionPane.YES_NO_OPTION);
    if (reply == JOptionPane.YES_OPTION)
    {
       System.exit(0);
    }
    

    【讨论】:

    • 感谢大家的输入,@Martijn,如果按照您的建议修改代码,我会得到一个是或否选项,但无论我单击是还是否,GUI 都会关闭!我错过了什么吗?
    • @Eric:你应该这样做:myFrame.setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);
    【解决方案2】:

    查看docs。有一个JOptionPane.YES_NO_OPTION,您可以将其作为参数传递。

    【讨论】:

      【解决方案3】:
      public static int showConfirmDialog(Component parentComponent,
                                          Object message,
                                          String title,
                                          int optionType)
      

      带有optionTypeJOptionPane.YES_NO_OPTION

      【讨论】:

        猜你喜欢
        • 2011-08-05
        • 1970-01-01
        • 1970-01-01
        • 2015-07-30
        • 2013-01-15
        • 1970-01-01
        • 1970-01-01
        • 2016-05-27
        • 2011-08-25
        相关资源
        最近更新 更多