欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

AS基礎(chǔ)教程整理第4/13頁

 更新時間:2007年03月22日 00:00:00   作者:  

第五章 開始第一個版本的選擇題的制作
多選題共有兩道

如圖,大家應該養(yǎng)成一個好習慣,用一個獨立的層來放置代碼,并把該層放到最上面會更便于修改。
第二層則獨立放置Label。不要覺得麻煩,只要你想到世界上大部分好的閃客都是如此做的,你就不會嫌麻煩了。
以下的層放的是選擇題的內(nèi)容,如上圖

開始創(chuàng)建題目
在question 1層的第一幀,寫上題目"When were movie clips introduced into Flash?" (什么時候FLASH開始引入電影夾子的概念?)
再寫上三個選項:Version 1, Version 2,  Version 3
跟著我們再做一個用來選擇的方框按鈕,從Library里面拖出這樣的三個按鈕,分別放到各個選項的前面。
第二題的創(chuàng)建我們用第一題來做個模版,選擇question 1層的第一幀,選擇菜單上的Edit>>Copy Frames
再選擇question 2的第十幀,Edit>>Paste Frames 將第一題復制過來了
當然問題要改成"When was MP3 audio support added to Flash?" (什么時候FLASH開始支持MP3格式導入?),答案也要改成Version 3, Version 4, Version 5 

數(shù)據(jù)初試化
雖然是個很簡單的FLASH,但是象其他復雜的FLASH一樣,先告訴FLASH要用到的數(shù)據(jù),例如題目的答案等,這是個好習慣,越復雜的FLASH,受惠越多
正常來說定義數(shù)據(jù)應該LOADING結(jié)束之后的。
為了把題目定在第一題,ACTION還需要一句stop();
選擇第一幀,在ACTION面板里面輸入代碼
// init main timeline variables
var q1answer; // user's answer for question 1 第一題用戶的答案
var q2answer; // user's answer for question 2 第二題用戶的答案
var totalCorrect = 0; // counts number of correct answers 答對的題數(shù)
var displayTotal; // text field for displaying user's score 顯示用戶分數(shù)的變量
// stop the movie at the first question
stop();
你會發(fā)現(xiàn)//開頭的那一行代碼都變了色,//代表的是注釋,是用來輔助閱讀代碼用的,對代碼執(zhí)行沒有影響(是的,你在里面寫笑話,寫小說都可以,不會影響你的FLASH的^-^)
我們定義了四個將要用到的變量,用途已經(jīng)在注釋里面寫了,寫注釋也是一個好習慣

關(guān)于命名變量名
變量起名displayTotal,意思是 display total,因變量名不能使用空格和破折號,所以用第二個單詞的開始字母大寫,以此分隔單詞
一些程序員也喜歡用下劃線:display_total
記住一定要給你的變量起一個一眼就能識別意義的名字

添加label
我們知道第二題是在第10幀的,我們只需要一句AS:gotoAndStop(10); 就可以執(zhí)行第二個問題了
不過MOOCK告訴你這不是好習慣,因為動畫的內(nèi)容是不斷改變的,所以我們應當習慣使用label,即使幀數(shù)如何變化,只要label指向正確,不需要修改ACTION都可以繼續(xù)運行(chocobo再提醒你吧,不要使用相同的label,即使在不同是Scene當中)
好了,我們在label層的第1、10、20分別F6創(chuàng)建關(guān)鍵幀,給他們寫上init、q2、quizEnd

要給按鈕寫上代碼了
在三個按鈕里面分別寫入代碼,大同小異的:
按鈕一:
on (release) {
  q1answer = 1;
  gotoAndStop ("q2");

按鈕二:
on (release) {
  q1answer = 2;
  gotoAndStop ("q2");
}
按鈕三
on (release) {
  q1answer = 3;
  gotoAndStop ("q2");
}  

這三段代碼用人類的語言描述,就是:當用戶點擊某個按鈕選擇答案后,把他選擇的答案記錄到q1answer變量中去,然后進入下一題。
on這個單詞代表隨后的就是一個要觸發(fā)的事件
release是指在按鈕上松開鼠標這樣一個事件
當動畫執(zhí)行到這里的時候,三個按鈕都會分別監(jiān)聽用戶有沒有做在按鈕上放開鼠標這個動作,一旦發(fā)生,按鈕就會自動執(zhí)行大括號{}里面的代碼了
若用戶選第一個,{}中是:
q1answer = 1; //用q1answer變量記住用戶選擇的是第一個答案
gotoAndStop ("q2"); //進入下一題
上面我用了注釋的方法來解釋兩句代碼,你必須習慣,因為不是所有源程序都有教程,但是好的源程序都會有注釋
第二題的按鈕與前面相似,只是變量換為q2answer,選擇完進入結(jié)束的畫面,例如第一個,改為:
on (release) {
  q2answer = 1;
  gotoAndStop ("quizEnd");


結(jié)束的畫面
結(jié)束應該做什么,當然是告訴用戶分數(shù)啦,寫在第20幀,就是label為quizEnd的那幀的代碼:
// tally up the user's correct answers
if (q1answer == 3){
  totalCorrect = totalCorrect + 1;
}
if (q2answer == 2){
  totalCorrect++; //totalCorrect++其實是totalCorrect = totalCorrect + 1;一個更簡潔的寫法,幾乎少打了一半的字母啊。
}

// show the user's score in an on-screen text field
displayTotal = totalCorrect; 
用人的語言描述:如果第一題選3,答對數(shù)加一,如果第二題選2,答對數(shù)加一,把答對題目數(shù)賦予另一變量
現(xiàn)在答對的題數(shù)是放到變量displayTotal中了,怎么顯示?
在quiz end第20幀處建關(guān)鍵幀,鍵入"Thank you for taking the quiz! Your score final score is:       /2"(謝謝回答問題,你最后成績是答對了   /2道題)
在"/2"之前那個空白的地方放上一個文本框,菜單Text>>Options顯示文本面板,把Static Text下拉改為Dynamic Text,順便把Border/Bg的鉤去掉,最后在Variable那一欄填上要顯示的變量名displayTotal

你是不是和chocobo一樣不耐煩了?快下載http://www.moock.org/webdesign/lectures/ff2001sfWorkshop/moockQuizzes.zip 吧,里面的quiz.fla就是本章的內(nèi)容,其他的fla的內(nèi)容也將會在后面講到

相關(guān)文章

最新評論