Fre*_*ek8 5 java checkbox swing
我在Java中有一个对话框,向用户提供~15个复选框.有没有办法一次性获取所有选中复选框的名称?目前,如果他们被选中,我一个接一个地看,这不是一个解决方案的幻想.
我正在寻找类似于在数组中获取所有选中复选框的内容,但之后在Java中
List<JCheckBox> checkboxes = new ArrayList<JCheckBox>();
for( Component comp : panel.getComponents() ) {
if( comp instanceof JCheckBox) checkboxes.add( (JCheckBox)comp );
}
Run Code Online (Sandbox Code Playgroud)
这假设所有JCheckBox实例都是容器面板的直接子实例.如果没有,那么你需要使用相同的逻辑以递归方式访问面板的所有容器.现在,虽然您可以这样做,但通常最好在将这些引用创建到列表中时保存这些引用.然后,您可以轻松地遍历所有复选框,而无需执行上述代码.如果你有嵌入式组件,最好要求嵌入式组件在它拥有的复选框上执行你想要的任何操作(而不是通过getter将它们拉出组件,这样你就可以以某种方式搞乱它们).
| 归档时间: |
|
| 查看次数: |
7583 次 |
| 最近记录: |