我已经在joption窗格中创建了自己的按钮,因为我需要为按钮上色并禁用其中之一以实现我的功能。当我单击其他启用的按钮时,Joption窗格没有关闭,在这里我需要单击十字按钮对话框中将其关闭。
有人可以告诉我如何在按钮动作事件后关闭Joption窗格。
JFrame frame = new JFrame();
JButton jb = new JButton(" Yes ");
jb.setBackground(Color.RED);
jb.setEnabled(false);
JButton jb1 = new JButton(" No ");
jb1.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
System.out.println("No action");
}
});
Object[] options = { jb, jb1 };
JTextArea area = new JTextArea(" *Note : some message !");
area.setForeground(Color.red);
int n = JOptionPane.showOptionDialog(frame, area, " Alert ", JOptionPane.YES_NO_OPTION,
JOptionPane.INFORMATION_MESSAGE, null,options,options[0]);
单击时,无需关闭“选项”窗格的对话框。
答案 0 :(得分:0)
在侦听器中,您可以执行以下操作:
jb1.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
Window w = SwingUtilities.getWindowAncestor(jb1);
w.setVisible(false);
}
}