老钟古

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

参考网上的一个例子,自己实现了相应的操作,具体看代码

package {

    import flash.display.MovieClip;
    
import flash.display.Sprite;
    
import flash.events.KeyboardEvent;
    
import flash.text.TextField;
    
    
public class MovieClipExample extends MovieClip {
        
public var bl : Boolean;
        
public var ball : MovieClip;
        
        
public function MovieClipExample() {
            ball 
= new MovieClip();
            ball.graphics.beginFill( 
0xCCFF00 );
            ball.graphics.drawCircle( 
506040 );
            ball.graphics.endFill();
            addChild( ball );
            
            stage.addEventListener( KeyboardEvent.KEY_DOWN, KeyDown );
            stage.addEventListener( KeyboardEvent.KEY_UP, KeyUp );
        }
        
        
public function KeyDown( e : KeyboardEvent ) : void
        {
            
if ( e.ctrlKey && e.keyLocation == 1 )
            {
                bl 
= true;
            }    
            
            
if ( bl )
            {
                
switch( e.keyCode )
                {
                
case 37 :
                        ball.x 
-= 20;
                        
break;
                
case 38:
                        ball.y 
-= 20;
                        
break;
                
case 39:
                        ball.x 
+= 20;
                        
break;
                
case 40 :
                        ball.y 
+= 20;
                        
break;
                }
            }
        }
        
        
public function KeyUp( e : KeyboardEvent ) : void
        {
            
if ( e.ctrlKey == false )
            {
                bl 
= false;
            }
        }
    }
}
posted on 2011-05-23 10:33  老钟古  阅读(276)  评论(0编辑  收藏  举报