java - 我们如何操作被选中的 Jcheckbox 的数量?

标签 java swing events jcheckbox

我有一个使用 JCheckbox 的小程序。我必须确保用户最多选择 5 个中的 3 个。是否有使用计数器的正确方法?

JCheckBox 是在 for 循环中填充的。其中仅声明了一个 JCheckbox,但为它们分配了不同的值,并将其添加到同一个 for 循环内的 JFrame 中。

由于从数据库检索数据,因此使用了循环。

最佳答案

假设您的 jcheckboxes 位于 JPanel

您可以使用此函数来获取所选JCheckBox的数量

public int getSelectedNumber(JPanel panel) {
    int numberOfSelected = 0;
    for (Component c : panel.getComponents()) {
        if (c instanceof JCheckBox) {
            numberOfSelected += ((JCheckBox) c).isSelected() ? 1 : 0;
        }
    }
    return numberOfSelected;
}

关于java - 我们如何操作被选中的 Jcheckbox 的数量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43042213/

相关文章:

c# - 在事件分派(dispatch)之前检查 null ...线程安全吗?

internet-explorer - 当我在文本字段中按Enter键时,需要停止什么事件才能阻止 “Dinging”中的IE?

java - 编程新手,Java.lang.NullPointerException 与 ArrayList

java - 调用 j9port_startup_library 时发生访问冲突

java - 为什么IdleConnectionMonitorThread需要同步

java - 在 Android : java. io.FileNotFoundException 中保存文件。打开失败:ENOENT(没有那个文件或目录)

Java 定时器和 Action 监听器

java - 从 JComboBox 选择颜色

java - JTable - 触发列数据更改事件

java - 为什么在 Linux 中,JButton、JLabel 鼠标点击丢失或被忽略?它没有按照程序应该做的去做