我正在使用 Groovy Swingbuilder,并且我想在构建初始面板后动态填充单选按钮 - 按钮组。示例:我有一个有几个选项的面板。根据选择的选项,我需要用一组单选按钮填充按钮组。每个选项的单选选项都不同。
我的面板看起来像这样:
panel(id:"chooseClass", visible:true, layout: new BL()){
vbox(constraints: BL.CENTER){
label("Player Statistics", horizontalAlignment: 0)
label(id: 'raceLabel', text: raceLabelText, horizontalAlignment: 0)
label(id: 'statLabel', text: statLabelText, horizontalAlignment: 0)
panel(id:'classGroupPanel', layout: new GridLayout(1,9)){
myButtonGroup = buttonGroup(id:'classGroup')
}
}
}
然后稍后在我的代码中我有这个方法:
def void setClassGroup(){
def classButtons = plyGen.getAvailibleClass()
// this is one way I've tried it
gPane.edt{panel(id:'classGroupPanel', layout: new GridLayout(1,9)){
buttonGroup(id:'classGroup').with{ group ->
classButtonGroup.each{ radioButton(id: '${it.name}', CreateRadio("${it.name}"), mnemonic:"${it.mnenomic}", buttonGroup: group)}}
}
}
// and this is another way I've tried it
gPane.doOutside {
this.classGroupPanel{
buttonGroup(id:'classGroup').with{group ->
classButtons.each{ gPane.radioButton(id: '${it.name}', CreateRadio("${it.name}"), mnemonic:"${it.mnenomic}", buttonGroup: myButtonGroup) }
}
}
}
}
这两种尝试都编译并运行没有错误,但我没有得到单选按钮列表。我希望有更多关于 swingbuilder 的文档。