[思路來源] 許多程序都有進(jìn)度條顯示,還有專門開發(fā)的控件,可以產(chǎn)生千變?nèi)f化的進(jìn)度條。這些在vb、vc等專門的編程語言中實(shí)現(xiàn)起來是手到擒來,不費(fèi)吹灰之力。如果能將它移植到authorware中,無疑將使多媒體軟件更加專業(yè)??梢灾苯诱{(diào)用這種控件,.不過這屬于“舶來品”。本文將一步步引導(dǎo)大家打造個(gè)性化的進(jìn)度條,這屬于手工作坊,個(gè)性十足。
[實(shí)現(xiàn)步驟]
包括“進(jìn)度條”和“進(jìn)度塊”。
<一> 搭建程序框架
由于本程序同時(shí)包含“進(jìn)度條”和“進(jìn)度塊”演示,為了系統(tǒng)性,所以搭建了程序框架。
1、加入一個(gè)顯示圖標(biāo)“bg”,放置程序標(biāo)題,工作室等一般信息。
2、加入一個(gè)框架圖標(biāo),作為程序框架。
(1)刪除入口處所有圖標(biāo);
(2)加入一個(gè)交互圖標(biāo),右側(cè)下掛一個(gè)計(jì)算圖標(biāo)“quit”、導(dǎo)航圖標(biāo)“"進(jìn)度塊"”和“"進(jìn)度條"”,類型是按鈕;
(3)框架右側(cè)下掛三個(gè)組圖標(biāo)“null”、“進(jìn)度塊”、“進(jìn)度條”。“null”空置,是為了防止程序自動(dòng)進(jìn)入主體內(nèi)容。后兩者分別用于放置相應(yīng)的程序;
(4)計(jì)算圖標(biāo)“quit”中的程序?yàn)椋?o:p>
quit()
(5)導(dǎo)航圖標(biāo)“"進(jìn)度塊"”導(dǎo)航至組圖標(biāo)“進(jìn)度塊”:
(6)導(dǎo)航圖標(biāo)“"進(jìn)度條"”導(dǎo)航至組圖標(biāo)“進(jìn)度條”:
(7)框架下方加入一個(gè)組圖標(biāo)“block”,用于放置供調(diào)用的進(jìn)度塊:
<二> 進(jìn)度條
采用移動(dòng)“蒙板”實(shí)現(xiàn)進(jìn)度條的延伸,通過“pathposition”變量實(shí)現(xiàn)數(shù)值的同步指示。
1、loading...
(1)打開組圖標(biāo)“進(jìn)度條”;
(2)加入一個(gè)顯示圖標(biāo)“l(fā)oading...”,寫入“l(fā)oading...”字樣;
2、進(jìn)度條
可以充分發(fā)揮想象力,打造各種各樣的進(jìn)度條,但是可別太出殼了!
(1)加入一個(gè)顯示圖標(biāo)“slider”;
(2)用繪圖工具制作了一個(gè)兩邊圓角的進(jìn)度條。
3、進(jìn)度條蒙板
(1)加入一個(gè)顯示圖標(biāo)“mask”;
(2)畫一個(gè)黑色矩形(為了與文件的黑色背景融合),完全覆蓋于進(jìn)度條上;
(3)設(shè)置“mask”的屬性為“on path”,并設(shè)置“base”和“end”兩端點(diǎn),使其能從完全覆蓋過渡到完全顯示進(jìn)度條;
4、百分比同步顯示
(1)加入一個(gè)顯示圖標(biāo)“percent”;
(2)輸入{int(pathposition@"mask"} %,設(shè)置“mask”的屬性為“update display variables”,就可以實(shí)現(xiàn)百分比的實(shí)時(shí)同步顯示了;
(3)本實(shí)例還繪制了線框,所以又設(shè)置“l(fā)ayer”為1,顯示模式為“transparent”,這樣就可以顯露出底層的“進(jìn)度條”和“mask”了;
5、實(shí)現(xiàn)進(jìn)度條功能的核心技術(shù)
(1)加入移動(dòng)圖標(biāo)“move mask”。通過移開“mask”,給人的錯(cuò)覺就是進(jìn)度條的前進(jìn)延伸;
(2)根據(jù)實(shí)際設(shè)置其屬性。本實(shí)例用一個(gè)變量“speed”來控制其運(yùn)行速度;
(3)加入一個(gè)顯示圖標(biāo)“completed”,調(diào)整位置到“l(fā)oading...”右側(cè),最為載入結(jié)束的文字指示;
6、 其它細(xì)節(jié)請(qǐng)參考源程序。
<三> 進(jìn)度塊
請(qǐng)將調(diào)試的開始小旗拖到組圖標(biāo)“block”前,程序?qū)倪@里開始運(yùn)行,以方便以下制作。
1、預(yù)制進(jìn)度塊
可以充分發(fā)揮想象力,打造各種各樣的進(jìn)度塊,但是也別太出殼了!
本步驟只是一個(gè)暫時(shí)過程,所以在最終的源程序中見不到!
(1)打開組圖標(biāo)“block”;
(1)加入一個(gè)顯示圖標(biāo)“slider”;
(2)用繪圖工具制作了一個(gè)完整的進(jìn)度塊,如一個(gè)綠色外框和十個(gè)黃色進(jìn)度塊。
2、分解進(jìn)度塊
(1)加入一個(gè)顯示圖標(biāo)“slider之塊1”;
(2)打開顯示圖標(biāo)“slider”,copy第一個(gè)進(jìn)度塊,再刪除該進(jìn)度塊;
(3)點(diǎn)擊小旗運(yùn)行程序,程序會(huì)自動(dòng)停止在顯示圖標(biāo)“slider之塊1”上;
(4)paste,則刪除第一個(gè)進(jìn)度塊后留下空檔就會(huì)被自動(dòng)整齊地補(bǔ)上;
(5)重復(fù)以上步驟,直到完成所有進(jìn)度塊的易位;
(6)現(xiàn)在,“block”中應(yīng)當(dāng)有十一個(gè)顯示圖標(biāo):“slider”、“slider之塊1”、“slider之塊2”……。因?yàn)椤癰lock”中只放置進(jìn)度塊,所以下面要移動(dòng)“slider”。
(7)移動(dòng)“slider”至組圖標(biāo)“block”中,并更名為“frame”,因?yàn)樗皇O乱粋€(gè)框架外殼了。設(shè)置顯示模式為“transparent”;
3 百分比同步顯示
(1)加入一個(gè)顯示圖標(biāo)“percent”;
(2)輸入{pencent} %,設(shè)置“percent”的屬性為“update display variables”,就可以實(shí)現(xiàn)百分比的實(shí)時(shí)同步顯示了;
4、實(shí)現(xiàn)進(jìn)度塊功能的核心技術(shù)
(1)加入組圖標(biāo)“調(diào)用進(jìn)度塊”;
(1)打開組圖標(biāo)“調(diào)用進(jìn)度塊”;
(3)加入一個(gè)等待圖標(biāo),設(shè)置等待時(shí)間為變量“wait time”,去除其余屬性;
(4)加入一個(gè)計(jì)算圖標(biāo)“1”,程序如下:
--------調(diào)用第一個(gè)進(jìn)度塊,并設(shè)置百分比
displayicon(iconid@"slier之塊1")
persent:=10
(4)重復(fù)3、4步驟,一直到最后一個(gè)等待圖標(biāo)和計(jì)算圖標(biāo)“10”。相關(guān)的程序只要修改調(diào)用的塊和百分比就可以了:
5、 其它細(xì)節(jié)請(qǐng)參考源程序。
[執(zhí)行效果]
測(cè)試一下吧.最最激動(dòng)人心的時(shí)刻就要到來了!當(dāng)我完成程序后,自我陶醉了整整半天!
1、運(yùn)行程序后,通過兩個(gè)導(dǎo)航按鈕“"進(jìn)度塊"”和“"進(jìn)度條"”,分別進(jìn)入相應(yīng)演示。
2、“"進(jìn)度條"”的演示效果為:隨著進(jìn)度條的前進(jìn)延伸,數(shù)值不斷增加,到達(dá)100%后,出現(xiàn)“completed”的文字指示;
2、“"進(jìn)度塊"”的演示效果為:.隨著進(jìn)度塊的前進(jìn)延伸,數(shù)值以10%的步幅不斷增加,最終到達(dá)100%。
3、點(diǎn)擊“退出”按鈕將退出程序。
[應(yīng)用]
1、可以應(yīng)用于片頭載入動(dòng)畫,如本實(shí)例所演示。
2、可以應(yīng)用于程序演示過程中的進(jìn)度顯示,如各種教學(xué)程序。
新聞熱點(diǎn)
疑難解答