我有一个程序,当按下编辑按钮时,窗口进入“编辑模式”,您可以根据需要更改字段,然后当您按下保存按钮时,它会保存您已完成的操作。我想要它的方式,如果你处于编辑模式,然后按另一个按钮我想要一个对话框来询问你是否要保存(是/否)。
现在我提示保存,如果它处于“编辑”模式,如果用户按下是,它将保存文件,如果按下任何其他内容,它将执行按钮应该执行的操作。
这就是我目前所拥有的。我想知道是否有更简单的方法来执行此操作,而不是将按钮的操作放在那里两次。
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...
}
答案 0 :(得分:1)
这是正确的方法,但您应该将showConfirmDialog()
的结果与JOptionPane
常数进行比较:
if (save == JOptionPane.YES_OPTION) {
// ...
}
不仅可以让其他人更好地阅读,而且如果常数有一天更改,你的代码仍然有效(但不太可能)。
答案 1 :(得分:1)
您可以将Button操作放在另一个方法中,如下所示:
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();
}