利用ITableLabelProvider设置sorter

利用ITableLabelProvider.getColumnText(Object element, int columnIndex) 方法获得text进行比较排序.

 

参照TableViewer Tutorial , 不需要对table的model再进行判断

 

	final TableViewer tableViewer = new TableViewer(parent, SWT.BORDER | SWT.FULL_SELECTION);
	final Table table = tableViewer.getTable();
	TableViewerColumn columnViewer = new TableViewerColumn(tableViewer, SWT.NONE);

	final TableColumn tableColumn = columnViewer.getColumn();

	//listener to set sort column
	tableColumn.addSelectionListener(new SelectionAdapter() {
	
		@Override
		public void widgetSelected(SelectionEvent e) {
			int dir = table.getSortDirection();
			if (table.getSortColumn() == tableColumn) {
				dir = dir == SWT.UP ? SWT.DOWN : SWT.UP;
			} else {
				dir = SWT.DOWN;
			}
			table.setSortDirection(dir);
			table.setSortColumn(tableColumn);
			tableViewer.refresh();
		}

	});

	//label provider
	tableViewer.setLabelProvider(new ITableLabelProvider() {
		//add unimplemented methods here
	});

	//sorter
	tableViewer.setSorter(new ViewerSorter() {
		@Override
		public int compare(Viewer viewer, Object e1, Object e2) {
			TableViewer tableViewer = (TableViewer) viewer;
			TableColumn sortColumn = tableViewer.getTable().getSortColumn();
			if (sortColumn == null) {
				return 0;
			}

			ITableLabelProvider labelProvider = (ITableLabelProvider) tableViewer
					.getLabelProvider();

			int columnIndex = tableViewer.getTable().indexOf(sortColumn);
			if (columnIndex != -1) {
				String text1 = labelProvider.getColumnText(e1, columnIndex);
				String text2 = labelProvider.getColumnText(e2, columnIndex);

				int rc = text1.compareTo(text2);
				if (table.getSortDirection() == SWT.DOWN) {
					rc = rc * -1;
				}
				return rc;
			}
			return 0;
		}
	});

 

 

 

YOLO26算法心电图十二导联目标检测+训练好的模型+368张数据集+pyqt可视化界面.zip 附训练好的 YOLO 权重与 PyQt 可视化检测界面,页面底部含可视化效果预览,毕设/课设开箱即用。 【数据集概况】 · 检测类别(中文):[导联I(I), 导联II(II), 导联III(III), 胸导联V1(V1), 胸导联V2(V2), 胸导联V3(V3), 胸导联V4(V4), 胸导联V5(V5), 胸导联V6(V6), 加压肢体导联aVF(aVF), 加压肢体导联aVL(aVL), 加压肢体导联aVR(aVR)] · 训练集:313 张 · 验证集:37 张 · 测试集:18 张 · 总计:368 张 该数据集聚焦于临床心电图信号的精准识别与定位,其核心检测目标为标准12导联心电图中的各个独立导联波形区域,涵盖肢体导联(I、II、III)与加压肢体导联(aVR、aVL、aVF),以及胸前导联(V1至V6),适用于心电图自动分析系统中对各导联位置的快速准确标注与分类。数据采集场景真实还原了医院心电图室或急诊监护环境下的标准心电图记录纸,波形清晰、基线稳定,具有高度临床参考价值。... 【训练曲线与评估图】 【模型训练配置】 参数 | 值 模型 | yolo26n 训练轮数 | 100 epochs 输入尺寸 | 640x640 批次大小 | 24 优化器 | auto 初始学习率 | 0.01 训练设备 【关键指标汇总】 训练了 57 个 epoch,最终轮指标: 指标 | 数值 mAP50 | **0.9708** mAP50-95 | 0.6344 Precision | 0.8990 Recall | 0.9191 train/box_loss | 1.2231 train/cls_loss | 0.9703 val/box_loss | 1.2779 val/cls_loss | 0.... 使用场景:毕业设计、课程设计、深度学习入门、工业场景落地验证。 立即下载

相关推荐

企业级AI助手平台 开箱即用的全栈AI平台,支持多智能体协同、Supervisor模式编排、多种决策模式、RAG技术和流程编排能力 支持多厂商大模型统一接入与管理,安全可控的企业知识库与高精度检索优化

企业级AI应用开发框架,支持多厂商大模型统一接入与管理,安全可控的企业知识库与高精度检索优化能力,提供可视化流程编排、自主决策智能体与多智能体协同调度,兼容主流 Agent Skill 协议,帮助企业与开发者零门槛快速构建安全、高效、可落地的AI智能体应用与行业解决方案。

Label Provider的使用

一声叹息!还是书接上文吧。 今天我们来讨论一下TableViewer的Label Provider。 对于TableViewer的Label Provider来说,根据Eclipse源码,只要是实现IBaseLabelProvider接口的类就可以,但是事实上TableViewer的Label Provider必须是实现ITableLabelProvider或者ILabelProvider接口...

weixin_30709809的博客 463

Opencv计算相机响应函数(Camera Response Function)与Radiance

本文主要用于记录自己在学习CRF过程中遇到的一些问题。 CRF模型 I=f(V(t⋅L))I=f(V( t\cdot L))I=f(V(t⋅L)) 其中III为相机灰度值Intensity,LLL为环境中irradiance,ttt为曝光时间,VVV为相机镜头参数,fff为相机响应函数CRF。 有些论文中认为相机镜头参数是线性的不考虑,但有些考虑了衰减即靠近图像边缘亮度会暗一些,但没有看到二者同时计算的,如果同时计算两个非线性的函数,我觉得可能会有不确定性,在这里还请教一下了解的朋友。 控制

larrydong的博客 5999

jface databinding:label provider 实现多列表格(Table)数据绑定的两个途径

显示需求如下图,希望将一组拥有两个字段的表与两列的table绑定在一起,实现自动显示。 在jface viewer中label provider用于提供数据对象到视图对象(viewer)显示内容的数据映射关系。也就是实现将数据模型中的不同字段的内容显示为viewer(如表格Table组件)中的文字或图像。 如下图IBaseLabelProvider是所有label provider的顶层抽象

10km的专栏 1832

高精地图语义分割标注

什么是语义分割?语义分割与目标检测的区别?语义分割的关键应用场景有哪些?高精地图语义分割标注的难点?

weixin_52509513的博客 1645

伪距单点定位算法原理以及利用最小二乘法计算实例

即该公式:建立下列代价函数满足最佳估值的条件为:即:可解得未知参数 X 的最佳估值由于每个可见卫星观测量的精度可能不一样,这时,需要对不同观测量赋予一个权重系数,称为加权。

qq_43381998的博客 1万+

【原创】TableViewer组件(十二)

TableViewer组件 JFace中提供了TableViewer组件,用TableViewer来表示表格。TableViewer 和TreeViewer类似,它也提供了内容提供器(IStructuredContent...

congqiongtang9427的博客 300

保姆级教程:STK 11.0 从下载到安装成功(附Matlab互联配置与常见问题解决)

本文提供STK 11.0的完整安装指南,包括下载、安装步骤、Matlab互联配置及常见问题解决方案。详细介绍了系统要求核查、分步安装流程、关键文件替换和许可证配置,确保用户能够顺利完成STK 11.0的部署并实现与Matlab的无缝对接。

weixin_30698297的博客 344

Eclipse JFace查看器

JFace 是一个基于 SWT(Standard Widget Toolkit)的 UI 工具包,用于构建基于 Eclipse 平台的 Java 应用程序的用户界面。JFace 提供了一组高级 UI 组件,以及一些实用的工具类,可以帮助开发人员快速构建具有丰富功能和良好用户体验的应用程序。

迟迟的博客 1297

大规模SoC芯片Hierarchical Flow Calibre LVS教程

大规模SoC芯片Hierarchical Flow Calibre物理验证LVS实现教程

weixin_37584728的博客 1200

多期DID实战指南:从CSDID原理到分组加权策略

本文深入解析多期DID(CSDID方法)在政策评估中的实战应用,从核心思想到分组加权策略全面讲解。通过电商扶贫等案例,详细演示如何正确处理分批实施政策的数据分析,包括分组拆解、子模块DID操作及加权平均选择,帮助研究者规避常见误区,提升政策评估的准确性。

weixin_26833503的博客 524

在TableViewer中使用ITableColorProvider

      JFace的Viewer提供了完美MVC封装,利用各种Provider即可实现各种功能,例如LabelProvider负责处理显示的文字和图片,ContentProvider负责处理内部对象结构,还可以自己定义Sorter负责排序,Filter负责过滤。如果要改变显示单元格的颜色,可以使用IColorProvider。      对于TableViewer来说,要使用ITableCol

moneyice的专栏 2662

PCB设计必看:铜皮厚度与载流能力对照表(附Excel计算工具)

本文深入解析了PCB设计中铜皮厚度与载流能力的核心关系,提供了基于IPC-2152标准的动态计算逻辑与实用Excel工具。文章不仅分享了载流对照表,更重点剖析了影响载流能力的关键因素(如铜厚、线宽、温升、布线层),并给出了高电流设计的实战技巧与测试验证方法,帮助工程师规避常见陷阱,实现从理论到实践的闭环设计。

weixin_29228781的博客 721

表格(TableViewer类)

第14章  表格(TableViewer类)TableViewer表格类是JFace组件中重要且典型的一个组件,其中涉及了JFace的众多重要概念:内容器、标签器、过滤器、排序器和修改器,这些概念对后面JFace组件特别是TreeViewer的学习非常重要。从本章也可以体会到JFace非常突出的面向对象特性。14.1  概    述JFace是SWT的扩展,它提供了一组

Zfrong繁荣的IT技术、IT项目、解决方案专栏Blog-上海 7643

VSCode + QMT 量化交易完整解决方案!

🏆本文收录于 《全栈 Bug 调优(实战版)》 专栏。专栏聚焦真实项目中的各类疑难 Bug,从成因剖析 → 排查路径 → 解决方案 → 预防优化全链路拆解,形成一套可复用、可沉淀的实战知识体系。无论你是初入职场的开发者,还是负责复杂项目的资深工程师,都可以在这里构建一套属于自己的「问题诊断与性能调优」方法论,助你稳步进阶、放大技术价值 。

**My Coding Family** 1327

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

CheckboxCellEditor 构造函数无需parent

和TextCellEditor不同, CheckboxCellEditor不会创建Control.   /** * Note that this implementation simply fakes it and does does not create * any new controls. */   创建CheckboxCellEditor只需   new Chec...

JasonRight 422

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

el-table修改原有数据如何获取当前行号并进行赋值

1.table序号中的prop名称与数据库中字段ID以示区分,如图所示:

木兮兰兮 6001

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

SWT 中TableView显示数据

package com.chni.from; import java.util.ArrayList; public class Windows { protected Shell shell; private Table table; // private Tree table; /** * Launch the application. * @param args */ public s

世間所有的相遇,都是久別重逢 3510

Tableviewer中为表格添加删除、修改link

SWT中Tableviewer表格使用添加在每一行后面添加超链接按钮

世間所有的相遇,都是久別重逢 2901

eclipse TableViewer的使用 ResultSet如何显示到TableViewer

 我们从数据库中查询得到一个ResultSet的对象,如何将它显示到TableViewer中呢?我们只能重新再定义一个新类,通过这个类生成对象,再把对象放到List中,再通过tableviewer.setInput(List对象)来实现。 比如我们现在有个getList()的方法,返回List对象。List里面的元素也是一个一个的对象,比如是员工对象ShowWorkers,包括员工

abrahu的专栏 3866

swt中改变表格字体大小及颜色的实现

<br />package org.eclipse.jface.snippets.viewers; import org.eclipse.jface.resource.FontRegistry; import org.eclipse.jface.viewers.IStructuredContentProvider; import org.eclipse.jface.viewers.ITableColorProvider; import org.eclipse.jface.viewers.ITabl

fm2005的专栏 6258

TableViewer 自定义ToolTip

TableViewer tablesResultTable = new TableViewer(scrolledComposite, SWT.FULL_SELECTION );         Table table = tablesResultTable.getTable();         table.setLayoutData(new GridData(SWT.FILL, SWT....

Mars Suburbs People 336

SWT 中的LabelProvide CellLabelProvider

在TableView中要使用ColumnLabelProvider和EditingSupport在创建列的时候要使用TableViewerColumn。 TableColumn的可以使用ITableLabelProvider。 ColumnLabelProvider是针对Cell的,也就是说要求每一列对应一个实例。提供了更多的功能如自定义的Tooltip,text,image,背景,前景。...

xmind 370
上一篇: Ntop查看局域网中各个主机的流量
下一篇: jdk1.6编译的plug-in转成jdk1.5时的错误
JasonRight
博客等级 码龄19年 1粉丝 29原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值