转: 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有强大的串处理功能,有了这些串方法,才能编写出丰富多彩 ...
随机推荐
- 第二十三篇 logging模块(******)
日志非常重要,而且非常常用,可以通过logging模块实现. 热身运动 import logging logging.debug("debug message") logging. ...
- 为Zabbix配置Nova服务、Keystone和Placement进程CPU和内存usage监控
目前已经完成了RabbitMQ和MySQL的监控项配置,还差对nova-api.nova-conductor.nova-scheduler和keystone进程CPU和内存 usage的监控,类似的轮 ...
- 问题 D: 约数的个数
问题 D: 约数的个数 时间限制: 1 Sec 内存限制: 32 MB提交: 272 解决: 90[提交][状态][讨论版][命题人:外部导入] 题目描述 输入n个整数,依次输出每个数的约数的个数 ...
- Python 学习笔记之 Numpy 库——数组基础
1. 初识数组 import numpy as np a = np.arange(15) a = a.reshape(3, 5) print(a.ndim, a.shape, a.dtype, a.s ...
- N-grams模型、停顿词(stopwords)和标准化处理 - NLP学习(2)
在上一节<Tokenization - NLP(1)>的学习中,我们主要学习了如何将一串字符串分割成单独的字符,并且形成一个词汇集(vocabulary),之后我们将形成的词汇集合转换成计 ...
- Pro Git - 笔记3
Git Branching Branches in a Nutshell Branches in a Nutshell let’s assume that you have a directory c ...
- cocos2d-x 显示中文字符和解析XML文件 转载
源地址:http://codingnow.cn/cocos2d-x/1038.html 在cocos2d-x中直接显示中文的时候会出现乱码,虽然在实际开发中把字符串直接写在代码里也不是好的做法,但是有 ...
- PokeCats开发者日志(五)
现在是PokeCats游戏开发的第八天的上午,来记录一下将PokeCats上传到360移动开放平台的过程. 首先点创建游戏. 会弹出这个东东. 个人只能创建免费游戏啊,TAT.算了,反 ...
- 关于aspnet_regsql使用方法
aspnet_regsql命令解释 说明该向导主要用于配置SQL Server数据库,如membership,profiles等信息,如果要配置SqlCacheDependency,则需要以命令行的方 ...
- spring笔记二
DI—Dependency Injection,即“依赖注入”:组件之间依赖关系由容器在运行期决定,形象的说,即由容器动态的将某个依赖关系注入到组件之中.依赖注入的目的并非为软件系统带来更多功能,而是 ...