2016-02-05 90 views
0

我已經動態添加組合組合中的多個複選框。現在,我想獲得組合內所有複選框的狀態(選中/取消選中)。我怎麼做?獲取SWT中組合組合內的所有複選框

我使用下面的一段代碼來處置一切。但爲了獲得狀態,我需要getSelection()方法,該方法不適用於Control對象。

for (Control control : grpTables.getChildren()) { 
    control.dispose(); 
} 

回答

3

您可以

遍歷孩子,測試,如果控制是Button一個實例與風格SWT.CHECK,然後調用getSelection()上投控制

例如

if(control instanceof Button && (control.getStyle() & SWT.CHECK) != 0) { 
    Button checkbox = (Button)control; 
    boolean selected = checkbox.getSelection(); 
    ... 
} 

或(優選)

在創建時將所有複選框放入集合中,並在需要時迭代此列表