SWT Table列自适应大小

news2024/9/20 0:54:47

要实现列自适应大小首先需要保证Table根据窗口拖动而改变大小。

Window中提供setShellStyle可以设置外壳样式。

构造一个新的自定义器对话框,在构造函数中添加setShellStyle(getShellStyle() | SWT.RESIZE);即可改变自定义对话框大小,如:

 getShellStyle()返回外壳样式位。默认值为SWT.CLOSE|SWT.MIN|SWT.MAX|SWT.RESIZE
子类应该调用setShellStyle来改变这个值,而不是重写此方法。

设置父级容器,包含table

设置table的布局样式,样式位new GridData(int)来调整控制填充单元格水平和垂直和以适应剩余的水平和垂直空间。GridData.FILL_BOTH,表示水平和垂直方向都填充完全。等同new GridData(SWT.FILL, SWT.FILL, true, true)方法。

设置列自适应大小。

//新建一列

TableColumn tcxValue = new TableColumn(table, SWT.None, 1);
tcxValue.setText(Messages.getString("value"));

//初始化列的宽度
 tcxValue.setWidth(200);

//监听事件,改变表格大小时触发改变列的宽度

// 当控件被移动或调整大小时触发
 table.addControlListener(new ControlListener() {
            @Override
            public void controlResized(ControlEvent e) {
                int width = table.getClientArea().width;
                TableColumn column = table.getColumn(1);
                column.setWidth(width - 100);
            }
            
            @Override
            public void controlMoved(ControlEvent e) {
                
            }
        });

也可以使用一下方式:

table.addListener(SWT.Resize, new Listener() {
            
            @Override
            public void handleEvent(Event event) {
                int width = table.getClientArea().width;
                TableColumn column = table.getColumn(1);
                column.setWidth(width - 100);
            }
        });

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/64930.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

[附源码]Python计算机毕业设计SSM教师教学质量评价系统(程序+LW)

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…

数据卷(Data Volumes)dockerfile

目录一、宿主机与容器之间的文件拷贝1、利用MySQL镜像安装MySQL服务2、从容器中拷贝文件到宿主机3、从宿主机拷贝文件到容器二、数据卷三、数据卷容器四、Dockerfile1、自定义centos,具备vim及ifconfig作用2、自定义tomcat8一、宿主机与容器之间的文件拷贝 1、利用…

Linux虚拟化网络之vlan配置

问题描述: Linux主机划分两个vlan,服务器server1的物理网卡的IP地址为1.1.1.1/24,服务器server2的物理网卡的IP地址为1.1.1.2/24。物理网卡下要虚拟化出来两个Vlan子接口,vlan10中主机的IP地址分别为10.10.10.1/24和10.10.10.2/2…

99%的人都把三层架构和SpringMVC的关系搞错了

99%的人都把三层架构和SpringMVC的关系搞错了!!! 先说结论, 三层架构和SpringMVC的关系就是没有关系。 很多人之前把SpringMVC中的M-Model当作三层架构中的servicedao(包括我),这个是一个错误…

前端知识粉碎机

diff算法 Dep的作用是收集观察者以及当数据发生变动时通知观察者去更新。 Dep.notify()通知观察者去更新。 当数据改变时,就会触发setter,然后触发Dep.notify,通知订阅者,比对新旧虚拟节点,判断是否是同类标签&#xf…

Emlog博客文章图片自动加水印插件

内容目录一、详细介绍二、效果展示1.部分代码2.效果图展示三、学习资料下载一、详细介绍 给Emlog博客的上传图片添加水印可以有效地保护作品版权,有效地打击那些转载文件不留原作者地址的垃圾网站,部分Emlog博主通常都是手动给图片添加水印,…

MySQL学习记录(7)SQL优化

3. SQL优化 3.1、插入数据 3.1.1 insert 如果我们需要一次性往数据库表中插入多条记录,可以从以下三个方面进行优化 insert into tb_test values(1,tom); insert into tb_test values(2,cat); insert into tb_test values(3,jerry); .....(1&#xf…

cartgrapher ukf 代码清晰属实不错

文章目录原理UKFSigma and weightUKF AlgorithmUT/UKF/EKF Summarycato_code外围函数检测是否为对称矩阵矩阵的开方根高斯分布UKF 代码实现类预测观测更新点评原理 UKF KF 系列求解: Kalman filter 需要线性模型EKF通过泰勒展开线性化更好的方式线性化 -> Unsc…

【OpenCV学习】第6课:图像模糊(中值滤波,高斯双边滤波)

仅自学做笔记用,后续有错误会更改 理论 中值滤波:对核内数值先进行排序,再取中间那个值 注1:中值滤波属于统计学的排序滤波器 注2:中值滤波对椒盐噪声有很好的抑制作用 高斯双边滤波(美颜磨皮效果一般都是用的这个)&#xff1a…

JAVA中的基本数据类型

文章目录0 写在前面1 特点2 举例说明2.1 数字型2.2 字符型布尔型3 写在最后0 写在前面 Java 语言支持 8 种基本数据类型:byte,short,int,long,float,double,char 和 boolean 1 特点 基本数据…

Java项目:SSM网上外卖订餐管理系统

作者主页:源码空间站2022 简介:Java领域优质创作者、Java项目、学习资料、技术互助 文末获取源码 项目介绍 该项目为前后台项目,分为普通用户与管理员两种角色,前台普通用户登录,后台管理员登录; 普通用户…

区分度评估指标-KS

1.背景 KS指标来评估模型的区分度(discrimination),风控场景常用指标之一。本文将从区分度的概念、KS的计算方法、业务指导意义、几何解释、数学思想等多个维度展开分析,以期对KS指标有更为深入的理解认知。 Part 1. 直观理解区…

javaee之黑马旅游网2

下面我们来做邮件激活功能 提示邮箱需要登录才能进行账号激活 保证用户填写的邮箱是正确的,可以推广宣传信息到邮箱中 下面分成两部分来做: 第一部分:发送邮件 这个功能就是通过工具类来进行实现的,直接从网上copy的代码 Mai…

痞子衡嵌入式:浅谈i.MXRT1xxx系列MCU时钟相关功能引脚的作用

大家好,我是痞子衡,是正经搞技术的痞子。今天痞子衡给大家介绍的是i.MXRT1xxx系列MCU时钟相关功能引脚作用。 如果我们从一颗 MCU 芯片的引脚分类来看芯片功能,大概可以分为三大类:电源、时钟、外设功能。作为嵌入式开发者&#…

service 详解

8.3.3 HeadLiness类型的Service 在某些场景中,开发人员可能不想使用Service提供的负载均衡功能,而希望自己来控制负载均衡策略,针对这种情况,kubernetes提供了HeadLiness Service,这类Service不会分配Cluster IP&…

在线表单设计器都有哪些优秀的功能?

当前,在大数据时代的发展背景下,自定义的在线表单设计器是提升办公效率和协作效率的工具。可视化表单工具丰富的组件、简单的操作等优势特点得到了很多客户的喜爱和支持。那么,您知道在线表单设计器的功能都有哪些吗?通过这篇文章…

前端_Vue_1.初识Vue

文章目录一、前言二、开始1. 简介1.1. 什么是Vue?1.2. 渐进式框架1.3. 单文件组件1.4. API风格1.4.1. 选项式API(Options API)1.4.2. 组合式API(Composition API)1.4.3. 该选哪个?2. 快速上手(学…

导出微信通讯录

不知道什么时候,微信好友已经增加到了几百人,熟悉的、不熟悉的人都淹没在一溜的名字里,今天来整理一下微信通讯录,该删的、该分组的都搞一搞。 首先,导出微信的通讯录 单击微信左下角“菜单”,选择“设置…

为什么我们不支持手工上传镜像

自从我们提供公共镜像库以来,不少同学询问是否支持手工上传镜像到镜像库。答案是:不支持。 今天给大家聊一聊为什么公共镜像库不应该支持手工上传,主要基于以下几个方面的考量: Code First 建木作为一个完整实现GitOps理念的工…

matlab⾼级绘图时间距离图像

这限制了可能在legend上⼯作以实现⽬标的可能性。 可能的解决⽅案是按照以下步骤创建⾃⼰的基于轴的图例: 使⽤以下语法[lgd,icons,plots,txt] legend(___)创建调⽤legend函数的图例(注意,不建议使⽤此语法,我们将在后续步骤中删除图例&…