我正在尝试输出一个消息对话框作为程序中操作监听器的结果。我不断收到一条错误消息“无法编译的源代码 - 不兼容的类型:void 无法转换为 java.lang.String”。我不知道我做错了什么,特别是当我可以使用几乎相同的代码让输入对话框和确认对话框按照我想要的消息对话框的方式出现时。这是我使用的代码...
//add an ActionListener for Search Menu Item
srch.addActionListener(new ActionListener(){
@Override
public void actionPerformed(ActionEvent e) {
if(database_name == null){
error = JOptionPane.showMessageDialog(null, "This is an Error Message", "Error", JOptionPane.ERROR_MESSAGE);
}
else if(database_name != null){
jta.setText("It works");
}//end if statement
}//end actionPerformed
});//end Search menuItem action listener
最佳答案
正如错误所述,error
变量很可能是 String
而 JOptionPane.showMessageDialog
不返回值,因为你可以在docs中看到
if(database_name == null) {
JOptionPane.showMessageDialog(null, "This is an Error Message", "Error", JOptionPane.ERROR_MESSAGE);
}
可以正常工作。
关于java - 无法从操作监听器获取消息对话框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21847733/