簡體   English   中英

跟蹤每次選中和未選中復選框的情況

[英]Keeping Track of Every Time that a Checkbox is checked and unchecked

我已經完成了大部分Java應用程序,因此現在正在記錄所有用戶活動。 我想跟蹤的一件事是每當我的復選框之一被選中和未選中時。 我可以在最后閱讀該對象是否被選中,但是我想知道每次實時使用復選框。 我想知道用戶選中和取消選中該框的次數。 現在,我正在使用類似於此語法的內容,但是每次復選框未選中時,它不會打印一條語句。

public CheckboxAction(String text) {
    super(text);
}

@Override
public void actionPerformed(ActionEvent event) {
    JCheckBox cbLog = (JCheckBox) event.getSource();
    if (cbLog.isSelected()) {
        System.out.println("Logging is enabled");
    } else {
        System.out.println("Logging is disabled");
    }
}

ItemListener在這里似乎合適

yourJCheckBox.addItemListener(new ItemListener() {
    public void itemStateChanged(ItemEvent arg0) {
        if (yourJCheckBox.isSelected()) {
            // Code to execute when it's selected
        }
        else {
            // Code to execute when not selected
        }
    }
});

首先,不要覆蓋actionPerformed 如果需要-至少在執行操作之前調用super.actionPerformed 最好的方法是使用addActionListener或者在本例中,如@BoDidely所述,使用addItemListener

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM