作者scars (超:新:星)
看板Flash
標題Re: [問題] 取得執行元件的名稱?
時間Wed May 14 02:46:31 2008
AS2
※ 引述《hhharley (有人要承租辦公室嗎?)》之銘言:
: 請問一下
: 我的場景上總共有n個元件
: 我要如何在滑鼠點下某個元件後
: 取得那個元件的名稱呢?
_name 是一個元件的名稱屬性
你可以在元件裡面寫
onRelease=function(){
trace(this._name); //trace到元件名字
}
或者
onRelease=funtion(){
_global.clicked=this._name; //把元件的名字存到全域變數
}
: 另外想再請教一個問題
: 假設英文單字與數字相對應
: 例如A(大寫)對1、B對2.....依此類推
: 那我要如何在FLASH中將取得的AA(元件名稱)轉換成1與1(供陣列處理使用)呢?
: 這中間似乎牽涉到
: 1.先將元件參照AA轉換成字串"AA"
如果你是用 _name 去取得元件名字,那麼它就是字串了
: 2.再用substring取得"AA"的第一位與第二位
: 3.最後分別針對一位與二位做轉換
例如 n:String 是元件的名字 "AB" 好了
trace(n.charCodeAt(0)); //A 的ansi碼 65
trace(n.charCodeAt(1)); //B 的ansi碼 66
trace(n.charCodeAt(0)-64); //得到 1
但是這樣的作法,感覺是把問題複雜化
因為先要想辦法取得元件名稱字串
再用名稱得到一個index值
再從index值取得元件名稱字串
然後在從這個字串得到元件真正的參照
不知道您是想做出怎樣的作品,我試寫一個..
「從桌上10張牌選出數張,再從這數張牌中隨機翻面一張」的東西
htm:
http://tinyurl.com/3q7a4m
fla:
http://tinyurl.com/5j7vbv
因為我自己的IE7沒辦法開swf,只好包在htm裡面...囧
--
另外我想建議一點
板上發文的時候可以註明一下是AS2或AS3
(放標題種類好像太長 XDD)
--
Dance Dance Revolution
-S u p e r N O V A 2-
超新星の煌き,再び!
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 218.160.180.231
推 hhharley:首先感謝scars的幫忙,切中我的需求^^。另外我用的是MX, 05/14 21:27
→ hhharley:我想應該是AS2吧^^"。最後跟s大說一下,我是想試著自己做 05/14 21:28
→ hhharley:五子棋的遊戲,不過純粹是利用閒暇時間多學點東西啦^^" 05/14 21:30
→ scars:我建議你可以先從人vs人寫起 人vs電腦有牽涉到更複雜的問題 05/15 00:07