转: JAVA_SWT常用事件, 和方法
转自: http://blog.csdn.net/lyq19870515/article/details/9450275
获取焦点事件:
text.addListener(SWT.FocusIn, new Listener() {
public void handleEvent(Event e) {
// 处理得到焦点的事件
}
}); 失去焦点事件:
text.addListener(SWT.FocusOut, new Listener() {
public void handleEvent(Event e) {
// 处理失去焦点的事件
}
}); 鼠标移入移出事件:
treeCom.getTree().addMouseTrackListener(new MouseTrackListener() {
@Override
public void mouseHover(MouseEvent e) { } @Override
public void mouseExit(MouseEvent e) {
//移入事件
}
@Override
public void mouseEnter(MouseEvent e) {
//移出事件
}
}); 按钮单击事件:
button.addSelectionListener(new SelectionAdapter() {
@Override
public void widgetSelected(SelectionEvent e) {
//事件处理
}
}); 鼠标左键双击事件:
tree.addListener(SWT.MouseDoubleClick, new Listener() {
@Override
public void handleEvent(Event event) {
if(event.button != 1) { //按键不是左键跳出. 1左键,2中键,3右键
return;
}
//事件处理
}
}); Table设置行高事件:
table_1.addListener(SWT.MeasureItem, new Listener() { @Override
public void handleEvent(Event event) {
//处理事件
event.height = 30;
//把当前事件移除.不然你点一下表就会执行很多次事件.
table.removeListener(SWT.MeasureItem, this);
}
}); 按钮单击事件:
button.addSelectionListener(new SelectionAdapter() {
@Override
public void widgetSelected(SelectionEvent e) {
//事件
}); 双击树.获得当前点击节点的名字:
tree.addListener(SWT.MouseDoubleClick, new Listener() {
@Override
public void handleEvent(Event event) {
if(event.button != 1) { //不是点击鼠标右键.
return;
}
Point point = new Point(event.x, event.y); //获取当前点击的坐标点.
TreeItem item = tree.getItem(point); //通过坐标点获取节点.
//获取所有选中的树节点.
//TreeItem [] itemArray = Global.getTree_UserOrgan().getTree().getSelection();
System.out.println(tree.getText());
}
});
获取Eclipse界面的大小(size):
Point size = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell().getSize();
获取鼠标当前位置:
Point Point = Display.getCurrent().getCursorLocation();
获取屏幕分辨率:
Monitor[] monitors = shell.getDisplay().getMonitors();
for (int i = 0; i < monitors.length; i++) {
Monitor m = monitors[i];
System.out.println(m.getBounds().toString());
} //程序输出: Rectangle {0, 0, 1366, 768}
树的复选框选中事件:
tree.addListener(SWT.Selection, new Listener() {
@Override
public void handleEvent(Event event) {
if (event.detail == SWT.CHECK) {
TreeItem item = (TreeItem) event.item;
if(item == null) {
return;
}
boolean checked = item.getChecked();
if(checked) { //如果是新选择一个元素. 就取消其他选择的元素.
for (int i = 0; i < projectMoudelTree.getTreeItemList().size(); i++) {
TreeItem tempItem = projectMoudelTree.getTreeItemList().get(i);
if(item != tempItem) {
tempItem.setChecked(false);
}
}
}
}
}
}); 复选框选中事件:
//创建复选框. 复选框不能带只读属性(SWT.READ_ONLY), 不然会认为你是按钮.
checkbox = new Button(composite, SWT.CHECK);
checkbox.setText("测试复选框"); checkbox.addSelectionListener(new SelectionListener() {
@Override
public void widgetSelected(SelectionEvent e) {
//复选框, 选中取消时触发此事件.
//checkbox.setSelection(false); 设置复选框选中. //如果想要复选框为只读属性
if(checkbox.getSelection()) {
checkbox.setSelection(false);
} else {
checkbox.setSelection(true);
}
} @Override
public void widgetDefaultSelected(SelectionEvent e) { }
});
SWT带垂直滚动条的Text自动滚动到底部(比如显示聊天信息, 日志的显示等)
以前一直以为是滚动条的设置. 结果完全不是那么回事.
Text tbx_text = new Text(group, SWT.BORDER | SWT.WRAP
| SWT.V_SCROLL | SWT.READ_ONLY);
tbx_text.setTopIndex(Integer.MAX_VALUE);
直接设置它的显示行数就行了, 设置最大, 就显示到最底了.
Dialog模式化:
private void createContents() {<span style="white-space:pre"> </span>
shell = new Shell(getParent(), getStyle()|SWT.SHELL_TRIM|SWT.APPLICATION_MODAL);
转: JAVA_SWT常用事件, 和方法的更多相关文章
- javascript常用事件及方法
1.获取鼠标坐标,考虑滚动条拖动 var e = event || window.event; var scrollX = document.documentElement.scrollLeft || ...
- Bootstrap modal常用参数、方法和事件
Bootstrap modal(模态窗)常用参数.方法和事件: 参数: 名称 类型 默认值 描述 Backdrop Boolean或字符串“static” True True:有背景,点击modal外 ...
- JavaScript中,有三种常用的绑定事件的方法
要想让 JavaScript 对用户的操作作出响应,首先要对 DOM 元素绑定事件处理函数.所谓事件处理函数,就是处理用户操作的函数,不同的操作对应不同的名称. 在JavaScript中,有三种常用的 ...
- Javascript中常用事件集合和事件使用方法
Javascript中常用事件集合和事件使用方法 一.事件绑定 格式: 事件源 . on事件类型=事件处理函数 事件绑定三要素 1.事件源:和谁绑定 2.事件类型:什么事件 3.事件处理函数:触发了要 ...
- DevExpress 行事历(Scheduler)的常用属性、事件和方法
一.TcxScheduler[TcxScheduler常用属性]1.Storage - 邦定一个Storage为Scheduler显示提供数据 2.DateNavigate.ColCount ...
- ios手势操作,四个基本事件与六个常用事件
基本事件包括begin,canceled,move,ended四项,如果对象的hidden属性为yes,则无效果,hidden属性必须为no;才能使用: -(void)touchesBegan:(NS ...
- Node.js process 模块常用属性和方法
Node.js是常用的Javascript运行环境,本文和大家发分享的主要是Node.js中process 模块的常用属性和方法,希望通过本文的分享,对大家学习Node.js http://www.m ...
- Web jquery表格组件 JQGrid 的使用 - 4.JQGrid参数、ColModel API、事件及方法
系列索引 Web jquery表格组件 JQGrid 的使用 - 从入门到精通 开篇及索引 Web jquery表格组件 JQGrid 的使用 - 4.JQGrid参数.ColModel API.事件 ...
- JavaScript常用对象的方法和属性
---恢复内容开始--- 本文将简单介绍JavaScript中一些常用对象的属性和方法,以及几个有用的系统函数. 一.串方法 JavaScript有强大的串处理功能,有了这些串方法,才能编写出丰富多彩 ...
随机推荐
- 「日常训练」 Mike and Fun (CFR305D2B)
题意(CodeForces 548B) 每次对01矩阵中的一位取反,问每次操作后,单列中最长连续1的长度. 分析 非常非常简单,但是我当时训练的时候WA了四次...无力吐槽了,人间 不值得.jpg 代 ...
- oracle12c 新建表空间
第1步:创建临时表空间 create temporary tablespace jeeplus_temp tempfile 'D:\app\Administrator\virtual\product\ ...
- django中判断当前user具有是否有对模块的增删改查权限
首先简单了解一下user的一些属性 User对象 User对象是认证系统的核心.用户对象通常用来代表网站的用户,并支持例如访问控制.注册用户.关联创建者和内容等.在Django认证框架中只有一个用户类 ...
- ActiveRecord-连接多张表之单表继承
ActiveRecord-连接多张表之单表继承 1. 基本概念 Rails提供了两种机制,可以将复杂的面向对象模型映射为关系模型,即所谓的单表继承(single-table inheritance)和 ...
- 问题 A: 完数
问题 A: 完数 时间限制: 1 Sec 内存限制: 32 MB提交: 252 解决: 178[提交][状态][讨论版][命题人:外部导入] 题目描述 求1-n内的完数,所谓的完数是这样的数,它的 ...
- Linux shell 整数运算 let [ ] (( )) expr以及 浮点数 bc用法(转)
Abstract : 1) Linux shell 中使用 let , [ ] ,(( )) 三种运算符操作 shell 变量进行简单的基本运算:2)Linux shell 中使用 expr 与 b ...
- hyperledger composer
hyperledger composer 网站搜集 https://hyperledger.github.io/composer/latest/introduction/introduction.ht ...
- eclipse快捷键(复制自己看)
1几个最重要的快捷键 代码助手:Ctrl+Space(简体中文操作系统是Alt+/)快速修正:Ctrl+1单词补全:Alt+/打开外部Java文档:Shift+F2 显示搜索对话框:Ctrl+H快速O ...
- Java课程设计--学生成绩管理系统
一.团队名称: 团队成员 林艺薇 201721123032 网络1712 黄毓颖 201721123033 网络1712 唐川 201721123034 网络1712 梁才玉 201721123038 ...
- 【bzoj3488】[ONTAK2010]Highways DFS序+树上倍增+树状数组
题目描述 一棵n个点的树,给定m条路径,q次询问包含一条路径的给定路径的个数+1 输入 The first line of input contains a single integer N(1< ...