简体   繁体   English

如何制作JCheckBoxes的2D数组?

[英]How to make 2D array of JCheckBoxes?

I have to make a 2D array of JCheckBoxes in Java. 我必须用Java制作JCheckBoxes的2D数组。 I'm using the code below, but when I try to set selected true: 我正在使用下面的代码,但是当我尝试将selected设置为true时:

checks[0][1].setSelected(true);

it says that checks[0][1] is null . 它说checks[0][1]null

JCheckBox[][] checks = new JCheckBox[14][14];

for (int i = 0; i < 14; i++) {
    for (int j = 0; j < 14; j++) 
        this.add(new JCheckBox(""));

You have to create each JCheckBox in the array and then add it. 您必须在数组中创建每个JCheckBox ,然后添加它。 I'd also suggest using named constants instead of magic numbers, like so: 我还建议使用命名常量而不是幻数,如下所示:

final int NUM_BOXES = 14; // named constant
JCheckBox[][] checks = new JCheckBox[NUM_BOXES][NUM_BOXES];

for (int i = 0; i < NUM_BOXES; i++) {
    for (int j = 0; j < NUM_BOXES; j++) 
        checks[i][j] = new JCheckBox("");
        this.add(checks[i][j]);
    }
}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM