窗口控制事件
在窗口系统中,当组件被移动或改变大小时将触发相应的事件。SWT通过ControlListener监听窗口控制事件。
ControlListener接口
在SWT中,通过实现ControlListener接口来响应组件被移动或改变大小的事件。ControlListener接口如例程9所示。
例程9 ControlListener.java
在窗口系统中,当组件被移动或改变大小时将触发相应的事件。SWT通过ControlListener监听窗口控制事件。
ControlListener接口
在SWT中,通过实现ControlListener接口来响应组件被移动或改变大小的事件。ControlListener接口如例程9所示。
例程9 ControlListener.java
package org.eclipse.swt.events; import org.eclipse.swt.internal.SWTEventListener; public interface ControlListener extends SWTEventListener { public void controlMoved(ControlEvent e); public void controlResized(ControlEvent e); }
其中,controlMoved表示组件被移动事件的响应方法,controlResized表示组件被改变大小事件的响应方法,ControlEvent为系统传入的窗口控制事件的参数,用户可以通过ControlEvent参数找到相应的组件。
窗口控制事件实例
为了更深入地理解窗口控制事件,下面通过具体的实例演示如何响应窗口控制事件。该程序只是简单地打印组件被移动或改变大小的信息,在具体的实例中,读者可以根据需要进行修改,代码如例程10所示。
例程10 ControlListenerExample.java
public class ControlListenerExample { public void run() { Display display = new Display(); Shell shell = new Shell(display); shell.addControlListener(new ControlListener() { public void controlMoved(ControlEvent e) { System.out.println("control move"); } public void controlResized(ControlEvent e) { System.out.println("control resize"); } } ); shell.pack(); shell.open(); while (!shell.isDisposed()) { if (!display.readAndDispatch()) { display.sleep(); } } display.dispose(); } public static void main(String[] args) { new ControlListenerExample().run(); } }
上例显示的只是一个空白的窗口,当用户移动窗口或改变窗口大小时,将会触发监听器所实现的事件。
本U R L:http://www.qqread.com/java/2008/02/r397063.html相关图文阅读
频道图文推荐
健 康 咨 询
时 尚 咨 询
相关专题
- Eclipse应用技术 (514篇文章)
- ASP.NET教程 (8457篇文章)
- Wlan组网----家庭专题 (4206篇文章)
- FreeBSD使用教程 (6580篇文章)
- Eclipse 开发技术 (132篇文章)
- J2SE综合:浅谈java程序发布之 jre 篇 (11次浏览)
- JAVA代码中使用魔法数值 (8次浏览)
- Hibernate缓存管理 (6次浏览)
- JAVA代码应该流畅和结构化 (5次浏览)
- Java JVM设置对性能的影响 (4次浏览)
- 开发框架:深入了解 Struts Validator (3次浏览)
- Java中的通信机制及与C/C API的集成 (1次浏览)
- 用Hibernate实现领域对象的自定义字段 (1次浏览)
- Java语言入门 简述Java语言回收机制 (0次浏览)
- 2008年Java开发者最迫切的五个期望 (0次浏览)



