给定一个 GUI 应用程序,用户将选择两个单选按钮之一JRadioButton a
,或JRadioButton b
。根据他的选择,他将输入不同的输入。但是,要计算公式,他将单击常规按钮,JButton c
。
但是,当在ActionListener
.
c = new JButton("c"); c.addActionListener(新的ActionListener(){ @覆盖 公共无效actionPerformed(ActionEvent e){ cActionPerformed(e); } });
因为在 内ActionEvent
,我们有,
公共无效cActionPerformed(ActionEvent ev){ 尝试 { 双 f = foo.blah(x, y); 双 b = bar.meh( y, z ); } 捕捉(NumberFormatException e){ JOptionPane.showConfirmDialog( null, "错误消息。", "错误", JOptionPane.CANCEL_OPTION ); } }
但是,程序仅在调用堆栈中下降一层,返回catch
异常对话框。如何做到这一点,以便当用户按下按钮时c
,根据是否选择a
或b
,他分别得到f
或b
?