0

我正在尝试制作一个表单,以便当用户选中复选框并单击按钮时,将执行一些代码。我试图在一份if声明中做到这一点,但当我做这两件事时没有任何反应。我正在使用 Swing 在 Java 中执行此操作。

这是代码:

private class theHandler implements ActionListener{
    public void actionPerformed(ActionEvent event){
        String tftext;
        tftext = tf1.getText();

        if (event.getSource()==b1)
            if(event.getSource()==cb1)
            JOptionPane.showMessageDialog(null, tftext, "title", JOptionPane.INFORMATION_MESSAGE);

b1是一个按钮,cb1是一个复选框,tf1是一个文本字段。

4

2 回答 2

5

Event.getSource()不会引用两个不同的对象,它应该引用单个事件的唯一源,例如,在单击按钮的情况下为 Button。您的嵌套语句将永远不会执行。

听起来您应该处理按钮单击,并在该事件处理程序中检查复选框的状态(选中与否)。如果选中该复选框,则显示您的对话框。

于 2012-10-02T20:47:03.130 回答
3

基本上你所说的是,如果事件来自按钮并且事件来自复选框,则显示一条消息。

这是不可能的,因为一个事件不能同时由一个按钮和一个复选框触发。您不能同时单击两者。

于 2012-10-02T20:46:47.793 回答