Я разрабатываю приложение Java Swing.JOptionPane - добавить keylistener для showOptionDialog
Когда я выхожу из приложения, опцияDialog выскочит, и он спросит меня, хочу ли я сохранить файл перед выходом.
То, что я хочу сделать, это есть три кнопки на optionDialog (ДА, НЕТ, ОТМЕНА) Я хочу сделать optionDialog изменить фокус кнопки стрелки ключа вместо язычком ключа. Как создать ключевой прослушиватель для кнопки в опцииDialog?
До сих пор, вот мой код
Object[] options = {" YES "," NO ","CANCEL"};
int n = JOptionPane.showOptionDialog(Swing4.this,
"File haven't save yet." +
" \n Are you want to save the file?",
"Confirm Dialog",
JOptionPane.YES_NO_CANCEL_OPTION,
JOptionPane.QUESTION_MESSAGE,
null, //do not use a custom Icon
options, //the titles of buttons
options[1]); //default button title
if(n == JOptionPane.YES_OPTION){
if(helper.updateFile("text.txt", gatherAllContent(), Swing4.this)){
System.exit(0);
}
label.setText("There is something wrong on quit");
}else if(n == JOptionPane.NO_OPTION){
System.exit(0);
}else if(n == JOptionPane.CANCEL_OPTION){
System.out.println("Cancel");
}
Ya! Это именно то, что я ищу! Вот мой другой вопрос. Как узнать, какую кнопку я нажал? JOptionPane.showOptionDialog возвращает результат нажатия кнопки. В этом случае, какой метод я должен использовать для получения результата – edisonthk
См. Отредактированный ответ. :) –