首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SwingBuilder: scrollPane

SwingBuilder: scrollPane
EN

Stack Overflow用户
提问于 2009-08-17 15:29:05
回答 1查看 1.5K关注 0票数 0

使用groovy的SwingBuilder设置滚动窗格的正确方法是什么?我正在使用griffon,我很难动态地添加和删除组件.

下面是我在SwingPad中尝试过的一个片段。它工作正常,但如果我的滚动窗格有滚动条,则删除只会采取立即效果。如果没有,就需要4到5秒。

下面是片段:

代码语言:javascript
复制
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[])

      }
    }
  }
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2009-08-19 09:20:11

看起来这是一个重新油漆的问题,因为这似乎是可行的:

代码语言:javascript
复制
  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[])
        }
      }
    }
  }
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1288602

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档