当用户输入错误的登录信息(错误的密码/用户名)时,我会显示一个错误对话框。
我使用JOptionPane
创建了错误框,但“确定”按钮不执行任何操作。
我无法弄清楚如何访问该按钮以在该特定对话框上调用dispose()
或其他内容。
这就是我所拥有的:
final JDialog error = new JDialog();
error.setTitle("Login Failed");
final JOptionPane optionPane = new JOptionPane(
"Invalid Username/Password",
JOptionPane.INFORMATION_MESSAGE);
error.add(optionPane);
optionPane.actionPerformed(new ActionPerformed() {
public void actionPerformed(ActionEvent e)
{
error.dispose();
}
});
error.setLocation(100,100);
error.setSize(new Dimension(300,150));
error.setModal(true);
error.setVisible(true);
请帮忙。
答案 0 :(得分:1)
您可以在API中使用其中一个showXxxDialog()。
http://docs.oracle.com/javase/7/docs/api/javax/swing/JOptionPane.html
Object[] options = { "OK", "CANCEL" };
JOptionPane.showOptionDialog(null, "Click OK to continue", "Warning",
JOptionPane.DEFAULT_OPTION, JOptionPane.WARNING_MESSAGE,
null, options, options[0]);
所以对你而言,它会是这样的:
Object[] options = { "OK", "CANCEL" };
JOptionPane optionPane = new JOptionPane();
optionPane.showOptionDialog(null, "Invalid Username/Password", "Warning",
JOptionPane.DEFAULT_OPTION, JOptionPane.WARNING_MESSAGE,
null, options, options[0]);
答案 1 :(得分:0)
我的猜测是这样可以解决问题:
JOptionPane.showMessageDialog(null, "You have failed!","Login failed!", JOptionPane.ERROR_MESSAGE);
显示错误对话框,其中包含消息和标题+ 确定按钮。
答案 2 :(得分:0)
您可以像这样访问JOptionPane按钮
int option = JOptionPane.showConfirmDialog(this, "Do you really want to close?");
做你的工作:)。这是代码
int option = JOptionPane.showConfirmDialog(this, "Wrong Username/Password");
if (option == JOptionPane.OK_OPTION){
JOptionPane.showMessageDialog(this, "You Pressed Yes button!");
}
else if (option == JOptionPane.CANCEL_OPTION){
JOptionPane.showMessageDialog(this, "You Pressed Cancel button!");
}