<?xml version="1.0" encoding="utf-8"?> <gui:RCPModule xmlns:mx="http://www.adobe.com/2006/mxml" xmlns:gui="cn.smartinvoke.gui.*" xmlns:rcp="cn.smartinvoke.rcp.*" layout="vertical" creationComplete="init()"> <mx:Script> <![CDATA[ import org.eclipse.swt.CEventType; import cn.smartinvoke.smartrcp.gui.module.CEvent; import org.eclipse.swt.SWT; import org.eclipse.swt.widgets.Display; function init():void{ //Display类型对象为单例对象,整个SmartRCP程序共享同一个Display对象,该对象 //为eclipse rcp 程序中的org.eclipse.swt.widgets.Display类型对象对应。 var display:Display=Display.getCurrent(); /** *添加键盘监听器,此处为键盘按下事件 */ display.addListener(CEventType.KeyDown,this.onKeyDownEvent,this); /** *添加鼠标按下事件 */ display.addListener(SWT.MouseDown,this.onMouseDownEvent,this); } /** *键盘按下事件的响应函数 */ function onKeyDownEvent(evt:CEvent):void{ //键盘ctrl + alt + F1组合键 if(evt.stateMask==(SWT.CTRL | SWT.ALT)&& evt.keyCode==SWT.F1){ this.info.text="ctrl + alt + F1 pressed"; }else{ this.info.text=evt.character+" down..."; } } /** *鼠标按下事件的响应函数 */ function onMouseDownEvent(evt:CEvent):void{ this.info.text="鼠标的第"+evt.button+"个按钮按下了"; } ]]> </mx:Script> <mx:Panel title="演示键盘鼠标监听,并且该模块监听ctrl + alt + F1组合键" cornerRadius="0" horizontalAlign="center" verticalAlign="middle" styleName="opaquePanel" width="100%" height="100%"> <mx:Label id="info"/> </mx:Panel> </gui:RCPModule>