Flex组件101 –在UI组件里启动屏幕键盘支持
来源:互联网 发布:南昌教师网络教研平台 编辑:程序博客网 时间:2024/05/19 00:11
本文来自:http://www.insideria.com/2009/08/flex-components-101---enabling-keyboard-support-in-uicomponent.html
创建过扩展UI组件的自定义组件,那你毫无疑问可以进入这样一个场景。即使你为屏幕键盘事件添加了事件监听,或你覆盖了keyDownHandler 函数,你可能会发现你的组件实例未处理屏幕键盘事件。设定focusEnabled, mouseFocusEnabled, 或tabEnabled 似乎也不会产生此效果。不要抓狂!这很容易。你可能已经注意到如果你扩展一个Canvas或一个Button, 或其它任何Flex 组件(Spark或Halo), 你可轻松接收屏幕键盘事件,而毫无问题。然而,如果你创建自定义组件,而你想一个完全空白的对象(尽可能的bare-bone),你想扩展UI组件。UI组件是所有可视化Flex组件的根本,包括所有的Halo 和 Spark 组件组。 在UI组件里启动屏幕键盘支持就像执行"IFocusManagerComponent"界面一样容易。所有使用于"IFocusManagerComponent"界面的方法都在UI组件基本类里定义清楚,你所要做的就是向你的类声明添加"extends IFocusManagerComponent"。 下面是个简单的范例。它是一个自定义组件,接收屏幕键盘输入,在屏幕上予以显示。 这里是让组件运行起来的代码: package { import flash.events.KeyboardEvent; import mx.controls.Text; import mx.core.UIComponent; import mx.managers.IFocusManagerComponent; public class UIComponentWithKeyboard extends UIComponent implements IFocusManagerComponent { private var txt : Text; override protected function createChildren() : void { super.createChildren(); txt = new Text(); txt.visible = true; txt.setStyle("color", 0); txt.text = "click here, and press any key to accept keyboard events"; addChild( txt ); } override protected function updateDisplayList(w:Number, h:Number) : void { super.updateDisplayList(w,h); txt.width = w; txt.height = h; with (this.graphics) { clear(); beginFill(0xFF0000, .1); drawRect(0,0,w,h); } } override protected function keyDownHandler(event:KeyboardEvent) : void { txt.text = "keycode:" + event.keyCode + ", location:" + event.keyLocation + ", charcode:" + event.charCode + ", value:" + String.fromCharCode( event.charCode ); } } }
- Flex组件101 –在UI组件里启动屏幕键盘支持
- 在Flex 4里创建自定义组件和皮肤
- 【FLEX UI】CLEAR TOOKIT UI组件
- 让Minimal开源UI组件支持中文
- Flex组件:模板组件
- Flex组件-常规组件
- Flex组件
- Flex组件
- flex组件
- j2me网上直播第2课 UI组件和在底层屏幕实现贪食蛇
- 关于Cocos2d-x引擎中UI组件在android4.2.2版本机中屏幕变色问题
- 在Android中不允许Activity里新启动线程访问该Activity里的组件
- 加载cocostudio导出的场景后,如何在代码里获取ui组件,ui组件是ui编辑器导出后用于场景编辑器。
- UI组件
- 在屏幕中使用评分组件
- 在AS里创建可视组件》关于AS组件
- Flex中ui组件拖拽的三种实现
- flex开发问题汇总1(UI组件)
- Flex应用程序性能小贴士
- Dreamweaver.CS4注册码
- Mod_security2
- 变相激发FileUpload事件
- Address already in use解决方法(ZZ)
- Flex组件101 –在UI组件里启动屏幕键盘支持
- 非标签一部分的符号以编码表示
- GetWindowLong
- 祝天下的老师节日快乐,今年你送礼了吗?
- DB2中如何實現Oracle的相關功能
- vi基本操作(2) -- 查找和替换
- Java核心API需要掌握的程度
- 处理海量数据的经验和技巧
- 文件系统(二)