0
항목 수신기를 확인란에 추가하여 해당 항목이 선택되어 있는지 확인하고 선택되어 있는지 확인합니다. 선택하려는 SQL 테이블 이름 목록에 항목 수신기를 추가하려고합니다. 반대로 선택되지 않은 경우 목록에서 제거하십시오. 어떤 체크 박스에 리스너를 추가 할 수는 없기 때문에 "그들은 최종적으로 최종적인 것이 아닙니다". 내가 할 수있는 일/그것을 공격하기위한 더 좋은 방법이 있습니까?JCheckBox 객체에 항목 수신기를 추가하려고 시도했습니다.
는내 방법 :
public JPanel drawChecks(){
ArrayList<String> list = MainFrame.grabSQLTableNames();
int index = list.size();
int rows = 1;
while(index > 1){
rows++;
index = index - 3;
}
GridLayout c = new GridLayout(rows, 3);
JPanel panel = new JPanel(c);
JCheckBox check[] = new JCheckBox[list.size()];
for(int x = 0; x < list.size(); x++){
check[x] = new JCheckBox(list.get(x));
check[x].setVisible(true);
check[x].addItemListener(new ItemListener() {
public void itemStateChanged(ItemEvent e) {
if (check[x].getState == true){
//do something
}
}
});
panel.add(check[x]);
}