有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java是一种更简单的提示保存对话框的方法

我有一个程序,当按下编辑按钮时,窗口进入“编辑模式”,你可以随意更改字段,然后当你按下保存按钮时,它会保存你所做的事情。如果您处于编辑模式,请按我希望的方式,然后按另一个按钮,我希望弹出一个对话框,询问您是否要保存(是/否)

现在,如果它处于“编辑”模式,我会提示它保存,如果用户按“是”,它将保存文件,如果按了其他任何按钮,它将执行按钮应该执行的操作

这就是我目前拥有的。我想知道是否有一个更简单的方法来做这件事,而不是把按钮的行动在那里两次

if (editing) {
        save = JOptionPane.showConfirmDialog(this, "Would you like to save?", "Save",
            JOptionPane.YES_NO_OPTION);

        if (save == 0) {
            saveFile();
        } else {
            //Button actions here...
        }
} else {
    //Button actions here...
}

共 (2) 个答案

  1. # 1 楼答案

    您可以用另一种方法执行按钮操作,如下所示:

    private void buttonActions() {
        // Button actions here...
    }
    

    然后

    if (editing) {
        save = JOptionPane.showConfirmDialog(this, "Would you like to save?", "Save",
            JOptionPane.YES_NO_OPTION);
    
        if (save == JOptionPane.YES_OPTION) {
            saveFile();
        } else {
            buttonActions();
        }
    } else {
        buttonActions();
    }
    
  2. # 2 楼答案

    这是正确的方法,但您应该比较showConfirmDialog()JOptionPane常量的结果:

    if (save == JOptionPane.YES_OPTION) {
      // ...
    } 
    

    不仅其他人可以更好地阅读,而且如果有一天更改了常量,您的代码仍然可以工作(但可能性很小)