Flash 執行PHP

語法跟Flash 外部載入文字檔 大同小異,但多加了要傳參數

AS2.0

var loader:LoadVars=new LoadVars();
loader.load("http://localhost/xxx.php?acc=a&pwd=b");
loader.onData=function(re:String){
trace(re);
}

AS3.0

var myURLReq:URLRequest = new URLRequest();
myURLReq.url="http://localhost/xxx.php?acc=a&pwd=b";
var myURLLoader:URLLoader = new URLLoader();
myURLLoader.load(myURLReq);
myURLLoader.addEventListener(Event.COMPLETE, function(e:Event){
trace(myURLLoader.data);
});


php

$account= $_GET['acc'];
$password= $_GET['pwd'];
echo "a1=".$account;
echo "p1=".$password;

範例檔:
AS2.0 http://www.box.net/shared/5suo5kcva8
AS3.0 http://www.box.net/shared/qn4ityqo1n
PHP http://www.box.net/shared/i3vyy6urs7

AppServ架站

每次都會忘了步驟,有人放教學,記下來
http://linux0911.no-ip.info/my_style/doc/appserv2/

Flash 動態Class名稱 使用getDefinitionByName方法(AS3.0)

昨天碰到一個問題,有時我們會在元件庫上,為元件"綁定類別"(Linkage),程式中要用時再new出這個元件。
ex:

var mc:MovieClip=new mc1();
stage.addChild(mc);


假設我有mc1~mc3,3個MovieClip,要隨機產生一個,所以我的程式碼如下:

var ranNum:int=Math.floor(Math.random()*3)+1;//得到1~3間的亂數
var mc:MovieClip;
switch(ranNum){
case 1:
mc=new mc1();
break;
case 2:
mc=new mc2();
break;
default :
mc=new mc3();
}
stage.addChild(mc);


那…如果我有10個呢? case寫10個判斷? 100個呢?ctrl+c、ctrl+v按個沒完沒了?
所以~找到了一個getDefinitionByName()的函數。
修改的程式碼如下:

var ranNum:int=Math.floor(Math.random()*3)+1;//得到1~3間的亂數
var tempClass=getDefinitionByName("mc"+ranNum);
var mc:MovieClip=new tempClass();
stage.addChild(mc);

簡潔多了吧~

範例:
http://www.box.net/shared/vrj4y61y9i

Flash 外部載入文字檔

文字檔的檔名為test.txt,與fla檔放在同一個資料夾

AS2.0
var myLoader = new LoadVars();
myLoader.load("test.txt");

myLoader.onData = function(str:String) {
trace(str);
};

AS3.0
var myURLReq:URLRequest = new URLRequest();
myURLReq.url = "test.txt";
var myLoader:URLLoader = new URLLoader();
myLoader.addEventListener("complete", onC);

myLoader.load(myURLReq);

function onC(e) {
trace(myLoader.data);
}

Flash 播放時鎖選單及右鍵

fscommand("showmenu", false);//封鎖右鍵選單及上面的menu選單
fscommand("trapallkeys",true);//封鎖"CTRL+ENTER"鍵

http://tw.knowledge.yahoo.com/question/question?qid=1509070708413

下載進度

AS2.0
範例檔:

AS3.0
範例檔:http://www.box.net/shared/1g7byr7u4j

http://tw.knowledge.yahoo.com/question/question?qid=1009062804614

Flash連結

AS2.0
getURL("http://www.google.com.tw","_blank");

AS3.0
import flash.net.*;
var myurl:URLRequest=new URLRequest("http://www.google.com.tw");
navigateToURL(myurl,"_blank");

http://tw.knowledge.yahoo.com/question/question?qid=1009050606129

抓到Flash所選取文字

TextArea組件放到場景上後,取名為ta

AS2.0
ta.onMouseUp=function(){
trace(ta.text.slice(Selection.getBeginIndex(),Selection.getEndIndex()));
}

AS3.0
ta.addEventListener (MouseEvent.MOUSE_UP , function(e:Event){
trace(ta.text.slice(ta.selectionBeginIndex,ta.selectionEndIndex));
})

http://tw.knowledge.yahoo.com/question/question?qid=1008090411262

Flash Lite

難得我的手機支援Flash Lite 2.1,就順便拿來玩玩吧~
找了好久,中文實在是沒什麼關於LG Ku990資訊,關於Flash Lite2.x的書籍也只有一本,沒辦法,只好看英文了…不過叫我看英文實在很吃力。
參考的網址:
http://www.joeearl.co.uk/portfolio/62/

Flash作品 俄羅斯方塊

從今年2月寫完後…放了好久…本來寫完就放上來了,但沒多久立刻又被我拿下來。
因為有嚴重的bug =.=,而且不知怎麼地,對這支很沒有耐心。
要不是因為被某人發現,我可能還會放到不知道何年何月。
今天總算花了點時間,把bug給清掉了。不過用的是跑較多for迴圈的方法。
不管了,先求有;再求好吧。

下載網址:http://www.box.net/shared/jahrxld8e3

送書,自取台中

我手邊有3本書沒用到,想送給大家,有需要的e-mail給我囉。
取書地點在台中火車站附近,預計 5/14<四> 20:00發書。

註:這三本書都有用鉛筆畫過了,在意的人自己買新書吧。

Java認證SCJP 5.0--猛虎出閘 作者:段維瀚/著 出版社:碁峰
http://www.books.com.tw/exep/prod/booksfile.php?item=0010316523

Java 2 新觀念教本-邁向SCJP專業認證(第二版) 作者:林新德 出版社:學貫
http://www.books.com.tw/exep/prod/booksfile.php?item=0010318397

Flash 8實力養成暨評量 作者:中華民國電腦技能基金會 出版社:碁峰 (附此書的解題祕笈)
http://www.books.com.tw/exep/prod/booksfile.php?item=0010332239
Category: 2 意見

JS 動態加入事件2

寫完 JS 動態加入事件1後,又被小卡到了 @@"

用clone的方式複製按鈕,呼叫function時,卻不是我想要的結果,一直出現5:
(本來的期望是,按下'按鈕0',就alert('0')
原始的程式碼:
範例下載htmlDOM2_1.htm

var obj=document.getElementById('a');
for(var i=0;i<5;i++){
var copyObj=obj.cloneNode(true); //複製節點
copyObj.innerHTML='btn'+i;
copyObj.onclick=function(){
alert(i);
}
obj.parentNode.appendChild(copyObj); //加上節點
}


後來發現,要改用this這個關鍵字來塞變數:
修改的程式碼:
範例下載htmlDOM2_2.htm

var obj=document.getElementById('a');
for(var i=0;i<5;i++){
var copyObj=obj.cloneNode(true); //複製節點
copyObj.innerHTML='btn'+i;
copyObj.val=i;//<-----------------重點,為節點增加屬性
copyObj.onclick=function(){
alert(this.val);//<-----------------重點,使用this
}
obj.parentNode.appendChild(copyObj); //加上節點
}
Category: 0 意見

JS 動態加入事件1

最近在寫HTML DOM,被卡到了,就到知識+去發問:
http://tw.knowledge.yahoo.com/question/question?qid=1009042810260

1.為元件設定onclick事件,呼叫不帶參數的function:

範例下載:htmlDOM1_1.htm

var obj=document.getElementById('a');
obj.onclick=alertA;
}
function alertA(){
alert('A');
}

2.為元件設定onclick事件,呼叫帶參數的function(感謝志明的回答):
範例下載htmlDOM1_2.htm

var obj=document.getElementById('a');
obj.onclick=function(){
alertB(參數);
}

function alertB(val){
alert(val);
}
Category: 0 意見