看板 Flash 關於我們 聯絡資訊
public function dragDropFunction(event:DragEvent):void { 如何在這裡抓到 AreaSeries 的 id } <mx:AreaChart dragOver="dragDropFunction(event)" ...... > <mx:series> <mx:AreaSeries id="ND1" ...... /> <mx:AreaSeries id="ND2" ...... /> </mx:series> </mx:AreaChart> 上面是大概(簡略)的程式碼 現在在我的 AreaChart 裡已經有兩條曲線 而我想要能夠判斷我拖曳到的是哪一條曲線 所以才想說要如何抓到 AreaSeries 裡的 id 可是苦於對於 ActionScript 3.0 的語法不熟 所以找一整個下午都沒看到相關的解決辦法 請問該如何才能抓到值呢? 謝謝大家 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 219.84.8.238
cloudfly:可以用trace(event.target.name,"被按下了");試看看 09/10 01:49
cloudfly:event.target可以捕捉到目前點的物件 09/10 01:51
cloudfly:.name則是可以得到實體名稱,也就是你想要的id 09/10 01:51
我用這這個方法後所抓到的是 AreaChart 的 id 我想會不會是因為拖曳的地方是在 AreaChart 裡 所以就一直只抓到 AreaChart 的屬性 ~"~a (PS.我不知道要去哪裡看 trace 的結果 ~"~a 所以我就另外用了一個方法來顯示) 而且我試了幾種方法 public function dragDropFunction(event:DragEvent):void { //如何在這裡抓到 AreaSeries 的 id var AC:AreaChart = event.currentTarget as AreaChart var AS:AreaSeries = event.currentTarget as AreaSeries myText4.text = AC.id; //很自然的抓到了 AreaChart 的 id myText4.text = AS.id; //連拖曳都不行了…更不用說要抓到什麼 id… //而且是只要一出現 AS.id 的指令就會拖曳失效 } 我也試過了在 AreaSeries 裡使用 dragEnter 這樣雖然能夠抓到 AreaSeries 的 id 但是拖曳效果僅限於拖曳到曲線下面積的時候 一但要向外拖曳時就會失去拖曳效果 所以就算在這裡抓到 AreaSeries 的 id 也沒用 因為一但要向外拖曳就會失效 不知道有沒有方法可以解決 麻煩各位了 謝謝 ※ 編輯: jyleef 來自: 219.84.235.215 (09/10 11:08)
cloudfly:complier時按Debug的按鈕就可以看到trace的結果了 09/10 12:37
cloudfly:另外想問一下,請問你抓id的目的是?? 09/10 13:04
jyleef:知道現在拖曳的是哪一條曲線 09/11 14:22