作者cyrus017 (小雲)
看板Flash
標題[問題] 滑鼠監聽無法click
時間Tue Dec 1 17:00:05 2009
我宣告了一個滑鼠監聽,不過卻無法點擊,是因為宣告成BitmapAssetMaterial的關係嗎
?
function addArrow():void {
// Create texture with a bitmap from the library
Arrow=new DisplayObject3D ;
var materialSpace:BitmapAssetMaterial=new
BitmapAssetMaterial("Arrow");
materialSpace.oneSide= false;
Arrow=new Plane(materialSpace,163,104,8,8);
Arrow.x=1400;
Arrow.y=-20;
Arrow.z=1500;
scene.addChild(Arrow);
Arrow.visible=false;
Arrow.addEventListener(MouseEvent.CLICK,onmouseClick);
}
function onmouseClick(event:Event):void {
var ldr:Loader=new Loader ;
var req:URLRequest=new URLRequest("*.swf");
ldr.load(req);
this.addChild(ldr);
}
讓3D物件與滑鼠做互動用了下面的類別也不行
*[1;34;40mArrow.addEventListener(InteractiveScene3DEvent.OBJECT_CLICK,onmouseCl
是不是我類別用錯無法做滑鼠監聽?
就算開啟了下面這行
materialSpace.interactive = true;
會出現
ReferenceError: Error #1056: 無法在
org.papervision3d.materials.BitmapAssetMaterial 上建立屬性 interactive。
如果我把原本的
Arrow.addEventListener(MouseEvent.CLICK,onmouseClick);
改成
Arrow.addEventListener(InteractiveScene3DEvent.OBJECT_CLICK,onmouseClick);
則會出現 覆寫不相容和Warning: 3590: 需要 Boolean 值的位置使用了 void。運算式會
強制轉型成 Boolean 值。
不知道什麼原因,找了好久都找不出答案= =...
原始檔約30MB →
http://www.badongo.com/cn/file/18470194
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 203.64.129.5
1F:推 dirtyeye:寫as檔的話先檢查有沒有import 正確 12/01 19:06
2F:→ dirtyeye:然後我記得BasicView 的camera屬性 要是"Target" 12/01 19:07
3F:→ dirtyeye:3D的話的確是要用InteractiveScene3DEvent.OBJECT_CLICK 12/01 19:09
4F:→ dirtyeye:以上是單純看完文章的回答= = 參考一下囉~ 12/01 19:10
import這方面應該都正確才對,camera屬性我等等在來試試..
如果確是要用InteractiveScene3DEvent.OBJECT_CLICK的話,其實我改了好多方式
我還寫成cube去試也不行,而且一直出現pv3d裡面的檔案覆寫不相容
只有寫成InteractiveScene3DEvent.OBJECT_CLICK 才會這樣
所以迫不得已才上來問各位,希望有人能幫我解答>"<
※ 編輯: cyrus017 來自: 59.116.195.45 (12/01 23:25)
5F:→ aquarianboy:viewport的interactive是不是也要打開? 12/01 23:41
6F:→ dirtyeye:viewport 就像是電視機的畫面 應該不是跟畫面互動吧 = = 12/02 01:22
7F:→ dirtyeye:我看到打開interactive 都是跟材質面ㄟ 12/02 01:23
8F:→ aquarianboy:其實我有看過viewport也開的 :) 反正試試也無妨 12/02 01:33
10F:推 dirtyeye:抱歉我上面有點說錯 是basicview的第四個參數要=true 12/02 03:07
11F:→ aquarianboy:所以其實我們講的是同一件事是嗎? 因為其實只要看一下 12/02 03:31
12F:→ aquarianboy:BasicView.as,設定第四個參數=true也就是把viewport 12/02 03:32
13F:→ aquarianboy:的interactive給打開了 12/02 03:33
14F:→ dirtyeye:應該是吧 哈 12/02 11:48
謝謝你們的回答,我大概明瞭你們的意思了,不過把BasicView.as和viewport3D.as的
第四個參數打開後,好像也是同樣的問題= =
Lines3D.as 1023: 覆寫不相容。
ViewportLayer.as Warning: 3590: 需要 Boolean 值的位置使用了 void。
運算式會強制轉型成 Boolean 值。
不知道是程式哪裡沒寫好...〞. .〝
︵
這問題卡了我好幾個禮拜了...XD
抓不到錯誤....
※ 編輯: cyrus017 來自: 203.64.129.5 (12/02 15:49)
15F:→ aquarianboy:不知道為什麼便當狗的檔案抓不下來... 12/02 16:13
16F:→ aquarianboy:說會自動開始下載,但都沒動 12/02 16:13
17F:推 cjcat2266:我也是抓不下來 12/02 16:51
18F:推 akkusativ:material.interactive=true試試看@@ 12/02 19:46
不好意思>"<..我重新上傳
好像便當狗的Sever出現問題,最近下載都會這樣,我等等在重新上傳到別的空間好了
http://cyrus017.myweb.hinet.net/SchoolPanorama.rar
我把檔案上傳到hinet的空間了,確定可以下載
material.interactive=true 加上這段也不行>"<
※ 編輯: cyrus017 來自: 203.64.129.5 (12/03 14:27)