0
다음 Groovy + SwingBuilder 코드가 있습니다.Groovy : ID 태그가있는 객체에 액세스하는 방법?
하나의 패널에서 확인란을 생성하고 다른 패널에서 확인란의 값에 액세스하려고합니다. 코드는 기본적으로 보이는이를 추천했습니다 :
def optionsmap = [ foo : "value_foo", bar : "value_bar"]
SwingBuilder.build()
{
frame(title:'demo1', size:[400,700], visible:true, defaultCloseOperation:WC.EXIT_ON_CLOSE) {
gridLayout(rows: 1, cols: 2)
panel(id:'optionPanel', constraints:java.awt.BorderLayout.CENTER) {
gridLayout(rows: 5, cols: 1)
myGroup = buttonGroup();
for (entry in optionsmap)
{
checkBox(id: entry.key, text: entry.value )
}
}
panel(constraints:java.awt.BorderLayout.WEST) {
button ('Show values', actionPerformed: {
for (entry in optionsmap)
{
println (entry.key as Class).text
}
})
}
}
}
optionsmap
을 연장 할 수 있습니다 (ID, 텍스트) 쌍지도입니다.
org.codehaus.groovy.runtime.typehandling.GroovyCastException : 할 수 없습니다 클래스 캐스트 객체 'foo는'java.lang.String의 내가 쇼 값을 누르면
나는 오류 메시지가 '클래스 에'java.lang.Class의 '
가 어떻게 optionsmap
에서 체크 박스 ID를 사용하여 두 번째 패널에서 내 행동의 확인란에 액세스 할 수 있습니다?
무엇, 정확하게, 당신은 "작동하지 않습니다"에 의해 의미합니까? 그것은 추락합니까? 아마도 체크 된 것들만 출력 할 것인가? 그들은 모두 선택되지 않았습니까? 이전 패널의 양식에서 데이터를 어떻게 바인딩합니까? 좀 더 완성주세요. – billjamesdev