http://www.webstudio.com.cn/blog/?p=547
RIA知识库
flex
RIA
在As3.0中的键盘事件使用中,除了键盘事件之外,还要先获取它的焦点.如果不想指定焦点,也可以直接使用stage来做为侦听对象.如下测试是一个盒子,通过键盘来控制它的移动.这里的测试主要是键盘组合键.如下代码:
package cn.com.webstudio{
import flash.display.Sprite;
import flash.events.KeyboardEvent;
import flash.ui.Keyboard;
public class KeyCodes extends Sprite {
private var box:Sprite;
public function KeyCodes() {
init();
}
private function init():void {
box=new Sprite();
addChild(box);
box.graphics.beginFill(0xff0000);
box.graphics.drawRect(0,0,40,40);
box.graphics.endFill();
box.x=stage.stageWidth / 2;
box.y=stage.stageHeight / 2;
stage.addEventListener(KeyboardEvent.KEY_DOWN,onKeyboardEvent);
}
public function onKeyboardEvent(event:KeyboardEvent):void {
switch (event.keyCode) {
case Keyboard.UP :
if (event.ctrlKey) {
box.y-= 10;
}
break;
case Keyboard.DOWN :
box.y+= 10;
break;
case Keyboard.LEFT :
box.x-= 10;
break;
case Keyboard.RIGHT :
box.x+= 10;
break;
default :
break;
}
}
}
}
在上面的代码中,可以按左右和下移动方块,向上移动时要同时按住ctrl+上箭头,在接下来的测试中,将代码
case Keyboard.UP :
if (event.ctrlKey) {
box.y-= 10;
}
break;
换成为
case 65:
if (event.ctrlKey) {
box.y-= 10;
}
break;
如果能成功,也就是说同时按下ctrl+a键来向上移动盒子.但并没有成功.而使用shift键确可以成功.如代码:
case 65:
if (event.shiftKey) {
box.y-= 10;
}
break;
目前为止并没有找到问题的原因.在用其它方法测试时,发现无论什么时候按下ctrl键它总会覆盖掉a的键值.而shift就不会.不知原因何在?
--原因
flash cs3中 ctrl键有另外用途不能测试!可以导出影片测试
btw:还有一小点就是在flash ide中会侦听一些键子的操作,在测试影片时,在影片的窗口中选择control菜单,选择disable keyboard shotcuts.即可.
分享到:
相关推荐
7. **第7章 Flash常用交互技术——.ppt**:文件名不完整,但可能涉及的是其他交互技术,如鼠标事件处理、键盘事件或者与服务器的通信等。 8. **第8章 Flash常用交互技术——.ppt**:同样文件名不完整,可能涵盖了更...
Flash CS3作为Adobe Creative Suite 3中的重要组成部分,是创建动态交互式内容的利器。它提供了强大的ActionScript 3.0编程环境,使得开发者能够利用源代码进行精细的动画控制、用户交互以及数据处理。本压缩包中的...
### 从零开始学习Flash+AS3游戏开发 #### 知识点概览 - **基础知识**:了解Flash和ActionScript 3.0 (AS3) 的基础概念。 - **环境搭建**:设置开发环境,包括Flash CS3/4/5 和 FlashDevelop。 - **项目创建**:创建...
在游戏开发中,理解AS3的基础概念至关重要,包括变量、数据类型、运算符、流程控制(如条件语句和循环)、函数以及事件处理。 二、面向对象编程 AS3.0是完全面向对象的语言,这意味着你可以创建自定义类和对象来...
4. **用户交互**:Flash应用程序能够响应鼠标和键盘事件,这对于游戏至关重要。例如,玩家可能会用鼠标点击气球,而游戏需要检测这些点击并做出反应。在ActionScript中,可以使用` MouseEvent.CLICK`来监听鼠标点击...
《Flash CS3 ActionScript 3.0游戏开发基础与范例》是一本专注于教授使用Flash平台和ActionScript 3.0进行游戏开发的教程。ActionScript是Adobe Flash Professional中的编程语言,版本3.0带来了许多重要的改进,包括...
【标题】:“Flash AS3 射击游戏源码”揭示了这个压缩包内包含的是一个使用Adobe Flash CS3开发的ActionScript 3.0版本的射击游戏的源代码。ActionScript 3.0是Flash平台上的编程语言,用于创建交互式内容、动画以及...
- **键盘事件处理**:在 AS3 中,`KeyboardEvent` 提供了处理键盘输入的能力,这对于开发游戏至关重要。 #### 三、创建基本游戏对象 - **GameObject 类**:作为游戏的基本单位,`GameObject` 类定义了游戏中所有...
- **语法结构**:了解AS3语言的基本语法规则。 - **事件处理**:掌握鼠标点击、键盘输入等常见事件的响应机制。 - **对象操作**:学会如何创建、访问、修改舞台上对象的属性与行为。 #### 九、高级功能探索 - **...
5. **事件驱动编程**:在AS3中,事件驱动编程是核心概念,如键盘事件(KeyboardEvent)监听用户的按键动作,以及TimerEvent用于控制游戏节奏。 6. **图形用户界面(GUI)设计**:Flash提供丰富的图形绘制和动画制作...
在本文中,我们将深入探讨“CS3 Flash 脚本编程——道路行进指示”的相关知识点,这是一项涉及ActionScript 3.0编程语言、Flash Professional CS3以及创建交互式图形用户界面的重要技能。我们将围绕如何利用这些工具...
这是一个基于flash cs6环境下结合as3.0外部类制作的一个适合用于多媒体课件制作的需要输入特殊符号的一个小键盘工具,因为此小工具是在flash cs6环境下制作的,可能低版本例如flash cs3等可能打不开,如果打不开的话...
- **事件驱动编程**:学习如何响应用户输入和游戏事件,如键盘和鼠标操作。 - **优化与性能**:了解如何减少内存占用,提高游戏运行速度。 **3. Flashdevelop和命令编译** FlashDevelop支持命令行编译,这对于自动...
本文将详细介绍如何使用Adobe Flash和ActionScript 3 (AS3) 语言从零开始构建一个简单但功能完整的游戏世界。我们将从最基本的元素开始,即一个受键盘控制的方块,并逐步扩展到更复杂的游戏对象。通过这个过程,读者...
10. **源码下载**:标签中提到的“源码下载”意味着这个压缩包可能包含了游戏的所有源文件,包括FLA文件(Flash工程文件)和AS文件(ActionScript源代码)。对于学习和理解Flash游戏开发的初学者来说,这是一个宝贵...
总之,ARPG人物移动涉及AS3中的键盘事件处理、对象定位、帧更新、碰撞检测等多个关键知识点。通过理解并实践这些概念,新手开发者可以逐步构建出复杂的ARPG游戏系统。在学习过程中,可以参考提供的FLA文件,分析其...