转自: 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常用事件, 和方法的更多相关文章

  1. javascript常用事件及方法

    1.获取鼠标坐标,考虑滚动条拖动 var e = event || window.event; var scrollX = document.documentElement.scrollLeft || ...

  2. Bootstrap modal常用参数、方法和事件

    Bootstrap modal(模态窗)常用参数.方法和事件: 参数: 名称 类型 默认值 描述 Backdrop Boolean或字符串“static” True True:有背景,点击modal外 ...

  3. JavaScript中,有三种常用的绑定事件的方法

    要想让 JavaScript 对用户的操作作出响应,首先要对 DOM 元素绑定事件处理函数.所谓事件处理函数,就是处理用户操作的函数,不同的操作对应不同的名称. 在JavaScript中,有三种常用的 ...

  4. Javascript中常用事件集合和事件使用方法

    Javascript中常用事件集合和事件使用方法 一.事件绑定 格式: 事件源 . on事件类型=事件处理函数 事件绑定三要素 1.事件源:和谁绑定 2.事件类型:什么事件 3.事件处理函数:触发了要 ...

  5. DevExpress 行事历(Scheduler)的常用属性、事件和方法

    一.TcxScheduler[TcxScheduler常用属性]1.Storage    - 邦定一个Storage为Scheduler显示提供数据 2.DateNavigate.ColCount   ...

  6. ios手势操作,四个基本事件与六个常用事件

    基本事件包括begin,canceled,move,ended四项,如果对象的hidden属性为yes,则无效果,hidden属性必须为no;才能使用: -(void)touchesBegan:(NS ...

  7. Node.js process 模块常用属性和方法

    Node.js是常用的Javascript运行环境,本文和大家发分享的主要是Node.js中process 模块的常用属性和方法,希望通过本文的分享,对大家学习Node.js http://www.m ...

  8. Web jquery表格组件 JQGrid 的使用 - 4.JQGrid参数、ColModel API、事件及方法

    系列索引 Web jquery表格组件 JQGrid 的使用 - 从入门到精通 开篇及索引 Web jquery表格组件 JQGrid 的使用 - 4.JQGrid参数.ColModel API.事件 ...

  9. JavaScript常用对象的方法和属性

    ---恢复内容开始--- 本文将简单介绍JavaScript中一些常用对象的属性和方法,以及几个有用的系统函数. 一.串方法 JavaScript有强大的串处理功能,有了这些串方法,才能编写出丰富多彩 ...

随机推荐

  1. python接口测试(二)——配置文件的使用

    在接口测试中,有些东西是固定不变的,比如url,若想更改的话就必须每个请求都更改,因此,可以放到配置文件中使用. 1.创建一个.ini的配置文件,如图: 2.读取配件文件中的内容,后续进行引用 #co ...

  2. String 将GBK转UTF-8

    public void transfer(String xml) throws Exception { return new String(xml.getBytes("gbk"), ...

  3. COJ 2192: Wells弹键盘 (dp)

    2192: Wells弹键盘 Description Wells十分羡慕和佩服那些会弹钢琴的人比如子浩君,然而Wells只会弹键盘…… Wells的键盘只有10个键,从1,2,3,……,9,0,如下图 ...

  4. truffle的调用nodeJs的问题

    Truffle3.0集成NodeJS并完全跑通(附详细实例,可能的错误) 升级到Truffle3.0 如果之前安装的是Truffle2.0版本,需要主动升级到Truffle3.0,两者的语法变化有点大 ...

  5. 用JAVA写一个多线程程序,写四个线程,其中二个对一个变量加1,另外二个对一个变量减1

    package com.ljn.base; /** * @author lijinnan * @date:2013-9-12 上午9:55:32 */ public class IncDecThrea ...

  6. cocos2d-x 显示中文字符和解析XML文件 转载

    源地址:http://codingnow.cn/cocos2d-x/1038.html 在cocos2d-x中直接显示中文的时候会出现乱码,虽然在实际开发中把字符串直接写在代码里也不是好的做法,但是有 ...

  7. MongoDB Linux下的安装和启动

    1. 下载MongoDB,此处下载的版本是:mongodb-linux-i686-1.8.1.tgz.tar. http://fastdl.mongodb.org/linux/mongodb-linu ...

  8. LTE中基于S1的切换

    1:源eNodeB决定进行基于S1的切换.S1切换的原因可能是源eNodeB和目标eNodeB之间不存在X2连接,或者源eNodeB根据其他情况作出的判断. 2:源eNodeB向源MME发送Hando ...

  9. systemtap get var of the tracepoing

    kernel.trace("sched_switch") func:func:perf_trace_sched_stat_template get the function in ...

  10. css3的counter的用法

    很早之前,计数器仅存在于ul,ol等元素中,如何想给其他元素增加计数,就只能通过list-style-image,或者background-image来实现.不过现在css3增加了counter属性, ...