转: 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有强大的串处理功能,有了这些串方法,才能编写出丰富多彩 ...
随机推荐
- oracle12c 新建表空间
第1步:创建临时表空间 create temporary tablespace jeeplus_temp tempfile 'D:\app\Administrator\virtual\product\ ...
- pytest 测试报告
测试报告 运行测试用例后,为了保存结果,我们需要生成测试报告,同时可以把运行的测试报告发送相关人员查阅,这时需要安装一个插件(pytest-html) pytest-html插件安装 pip inst ...
- Python全栈 MongoDB 数据库(数据的修改)
修改操作符的使用 $set 修改一个域的值,增加一个域 阿哲年龄修改为33 db.class1.update({name:'阿哲'},{$set:{age:33}}) 如果sex域不存在则 ...
- 【Dataset】Goodbooks-10k: 图书推荐数据
当前推荐领域一些公开的据集都是关于电影和音乐的(比如Netflix.Movielens等),没有关于图书推荐的数据.本文将要介绍的就是一份用于图书推荐的数据集,该数据来源于goodreads网站,包含 ...
- 容器基础(五): 实现一个简单容器sdocker
在前面几部分的基础上, 我们更新一下代码,实现一个简单容器 sdocker. sdocker目录构成 linux: # tree . ├── Makefile ├── cpu-test.c # 由cp ...
- [android]不解锁刷机
本人因为误操作进入andriod recovery模式,显示failed to boot 2,致手机无法恢复出厂值, 当时那叫一个郁闷.上论坛搜寻无数,唉让刷底包的无数(在此不解释),万恶的刷底包. ...
- Jboss提示:Server already running on localhost
最近在做项目中,经常遇到JBoss报如下提示:Server already running on localhost.这时Jboss显示已启动,但页面显示不出来.提示中给出了两种解决办法,运行新的服务 ...
- 使用ExecutorService实现线程池
ExecutorService是java提供的用于管理线程池的类. 线程池的作用: - 控制线程数量 - 重用线程 当一个程序中创建了许多线程,并在任务结束后销毁,会给系统带来过度消耗资源,以及过度切 ...
- [CF632A]Grandma Laura and Apples
题目大意:有$n$个顾客买苹果,每个买一半的苹果,有时会送半个苹果.最后卖光了,问卖了多少钱 题解:倒退过来,可以把半个苹果当做一份来算,这样不会有小数 卡点:无 C++ Code: #include ...
- Visio中的Undo和Redo
1.Visio默认Undo和Redo操作是可用的,Appliacation中的UndoEnabled标志Undo和Redo操作是否可用. m_Visio.Window.Application.Undo ...