java – 如何正确避免SWT表放大?
发布时间:2020-12-15 04:33:55 所属栏目:Java 来源:网络整理
导读:我有一个简单的SWT程序,如下所示: public static void main(String[] args) { final Display display = new Display(); final Shell shell = new Shell(display); shell.setLayout(new GridLayout(1,false)); shell.setMinimumSize(300,300); // table fina
我有一个简单的SWT程序,如下所示:
public static void main(String[] args) { final Display display = new Display(); final Shell shell = new Shell(display); shell.setLayout(new GridLayout(1,false)); shell.setMinimumSize(300,300); // table final Table table = new Table(shell,SWT.BORDER); final GridData gridData = new GridData(SWT.FILL,SWT.FILL,true,true); gridData.heightHint = 0; // "hack" table.setLayoutData(gridData); // example data for (int i = 0; i < 50; i++) { final TableItem item = new TableItem(table,SWT.NONE); item.setText("item no." + i); } shell.pack(); shell.open(); while (!shell.isDisposed()) { if (!display.readAndDispatch()) { display.sleep(); } } display.dispose(); } 我期待的 – 我希望桌子完全填满贝壳空间而不改变它的大小. (截图1和3) 问题 – 如果我向表中添加行,表会自动调整大小(shell也是如此). (截图2) 解决方法 – 为了避免这种行为,我添加了一行gridData.heightHint = 0;到代码.但这对我来说似乎是个黑客. 问题 – 添加数据时,避免扩大表(和shell)的正确方法是什么? 问候,winklerrr 截图1 没有数据,表和shell在两个版本中都没有得到调整大小,正确的行为 截图2 随着数据,表和shell的扩大,错误的行为,只有没有黑客 截图3 对于数据,表和shell不会调整大小,添加滚动条,正确的行为,只有黑客 解决方法
在向表中添加数据之前的某个时刻调用shell.setSize(int width,int height)?
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- Spring boot项目部署到云服务器小白教程详解
- java – 如何自定义格式化JFormattedTextField以显示IP地址
- MyBatis存储过程、MyBatis分页、MyBatis一对多增删改查操作
- java – 找不到参数org.gradle.api.Project的方法android()
- Java获取虚拟机内存和操作系统内存及其线程
- 守护线程
- Java虚拟机(JVM)及Java跨平台原理
- 多线程 – Powershell Throttle通过作业完成多线程作业
- Springboot中集成Swagger2框架的方法
- java基础(16):正则表达式、Date、DateFormat、Calendar