使用groovy的SwingBuilder设置滚动窗格的正确方法是什么?我正在使用griffon,我很难动态地添加和删除组件.
下面是我在SwingPad中尝试过的一个片段。它工作正常,但如果我的滚动窗格有滚动条,则删除只会采取立即效果。如果没有,就需要4到5秒。
下面是片段:
import java.awt.Dimension
panel(id:'main') {
panel {
button(name:'x', action: action(name:'add', closure:{p.add(label('new')); main.revalidate()}))
button(action: action(name:'remove', closure:{p.removeAll();main.revalidate()}))
}
panel() {
scrollPane(preferredSize: [200,200], constraints: context.CENTER) {
panel(id:'p') {
checkBoxList(listData: (1..20).collect([]){"Option $it"} as Object[])
}
}
}
}发布于 2009-08-19 09:20:11
看起来这是一个重新油漆的问题,因为这似乎是可行的:
panel(id:'main') {
panel {
button(name:'x', action: action(name:'add', closure:{p.add(label('new')); p.revalidate()}))
button(action: action(name:'remove', closure:{p.removeAll();p.revalidate();scroll.repaint()}))
}
panel() {
scrollPane(id:'scroll',preferredSize: [200,200], constraints: context.CENTER) {
panel(id:'p') {
checkBoxList(listData: (1..20).collect([]){"Option $it"} as Object[])
}
}
}
}https://stackoverflow.com/questions/1288602
复制相似问题