首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SWT TreeViewer调整大小问题

SWT TreeViewer调整大小问题
EN

Stack Overflow用户
提问于 2013-07-01 11:57:37
回答 1查看 1.3K关注 0票数 0

我在一个列中的一个视图中有3个树查看器对象,比如配置,如果我最大化/最小化视图/eclipse窗口,那么它们的大小也会增加。这是我的代码:

代码语言:javascript
复制
Composite composite = new Composite(parent, SWT.NONE);
composite.setLayout(new GridLayout(1, false));

treeViewer1 = new TreeViewer(composite, SWT.BORDER);
tree1 = treeViewer1.getTree();
tree1.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 1, 1));
tree1.pack();

treeViewer2 = new TreeViewer(composite, SWT.BORDER);
tree2 = treeViewer2.getTree();
tree2.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 1, 1));
tree2.pack();

treeViewer3 = new TreeViewer(composite, SWT.BORDER);
tree3 = treeViewer3.getTree();
tree3.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 1, 1));            
tree3.pack();

然而,当某棵树的内容超过当前的查看空间,并且我最大化/最小化视图时,树的查看空间就会比其他的树大。

是否有办法防止由于内容大小而导致的这种调整大小行为?非常感谢,ND

EN

回答 1

Stack Overflow用户

发布于 2013-07-03 14:55:20

如果您阅读了GridLayout的文档,您将找到您的答案:

构造这个类的一个新实例,给定列数,以及是否应该强制这些列具有相同宽度的。如果numColumns的值小于1时,布局将不会设置任何控件的大小和位置。

您的问题的解决方案是替换它(因为您是在讨论列):

代码语言:javascript
复制
composite.setLayout(new GridLayout(1, false));

通过以下方式:

代码语言:javascript
复制
composite.setLayout(new GridLayout(3, true));
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17403962

复制
相关文章

相似问题

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