Flash MX 2004 ActionScript圖文教程(八)

- 中國WEB開發者網絡 (http://www.webasp.net)
-- 技術教程 (http://www.webasp.net/article/)
--- Flash MX 2004 ActionScript圖文教程(八) (http://www.webasp.net/article/22/21326.htm)
-- 作者:未知
-- 發佈日期: 2005-04-30
  2.1鼠標和鍵盤事件
  鼠標事件可以說是應用最多的事件了,所以我們就從鼠標事件下手來看看當用戶在屏幕上揮動鼠標時,Flash應該如何作出反應。

  2.1.1鼠標按下(on(press))
  如果某個界面元素(比如一個按鈕或者一個影片剪輯的實例)的代碼中含有on(press)這樣的事件處理代碼,那麼當用戶在這個界面元素上按下鼠標時,on(press)後面的大括號中的代碼就會被執行。

  2.1.2鼠標釋放(on(release))
  這個事件在鼠標健釋放的時候發生,這個事件通常都是在on(press)之後發生的,有press才能有release嘛!舉個例子來說,當我們需要處理用戶單擊某個按鈕的事件時,就可以為這個按鈕添加一個on(release)事件處理。儘管在這種情況下on(press)和on(release)的作用是相似的,因為通常press之後總會release,但是我們還是應當盡量使用on(release),為什麼呢?因為如果使用on(press)會讓你的按鈕「過於敏感」——輕輕一按,代碼立刻就被執行了,如果用戶發現自己按錯了,可就沒有後悔藥吃了。而當使用on(release)時,一旦用戶發現按錯了,可以按住鼠標按鈕不放,將鼠標指針移動到按鈕之外釋放,代碼就不會被執行,這才是比較人性化的按鈕行為。

  2.1.3在外部釋放鼠標(on(releaseOutside))
  當用戶在某個按鈕或者影片剪輯實例上按下鼠標(注意,是按下鼠標按鈕不放),然後拖動鼠標指針,在這個按鈕或者影片剪輯實例外面再釋放鼠標,這時就會發生releaseOutside事件。我們可以在這個按鈕或者影片剪輯的事件處理代碼中添加on(releaseOutside)來捕獲並處理這個事件。

  2.1.4鼠標懸停(on(rollOver))
  當鼠標指針在某個界面元素上面時,rollOver事件就會發生。這個事件最典型的應用是用來製作鼠標指向某個按鈕或者影片剪輯實例時產生的反饋效果:比如按鈕顏色變化、彈出菜單或者執行其他的一些操作。

  2.1.5鼠標移出(on(rollOut))
  這個事件和rollOver相對,很顯然,當鼠標指針在一個界面元素上方運動時產生rollOver事件,那麼鼠標指針移出這個界面對象的時候就會產生rollOut事件。rollOut事件的出路iherollOver事件的處理經常是成對出現的,比方說,我們捕捉rollOver事件,在on(rollOver)中彈出了了一個菜單,那麼很顯然我們還需要捕捉rollOut事件,在on(rollOver)中添加適當的代碼將彈出的菜單隱藏起來,否則菜單就會一直顯示在界面上。

  2.1.6拖動掠過(on(dragOver)
  拖動操作我們都很熟悉,就是鼠標在某個對象上按下以後不釋放,然後拖動鼠標。dragOver事件就是當鼠標指針處於拖動狀態時經過某個對象時發生的事件。在製作拖動效果時,我們經常要和這樣的事件打交道。

  2.1.7拖動移出(on(dragOut))
  從名字也能看出來,dragOut和dragOver恰好相反,也就是當鼠標處於拖動狀態下時從一個對像上法移動出去時發生的事件。

  2.1.8鍵盤事件(On(keypress」<>」))
  當我們需要捕捉用戶的按鍵操作時都需要使用這個事件,比方說如果需要捕獲用戶按下方向鍵左鍵的操作時可以使用On(keypress」」),其他的以此類推。

webasp.net