VC中使用+Flash+美化你的程序_第1頁(yè)
VC中使用+Flash+美化你的程序_第2頁(yè)
VC中使用+Flash+美化你的程序_第3頁(yè)
VC中使用+Flash+美化你的程序_第4頁(yè)
VC中使用+Flash+美化你的程序_第5頁(yè)
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、在VC中使用Flash 美化你的程序代碼運(yùn)行效果圖利用flash可以作出很漂亮的動(dòng)畫(huà),想不想讓自己的程序也有這樣漂亮的界面呢?_,其實(shí),要做到這點(diǎn)也不難。在這里將介紹怎樣把falsh制作的界面嵌入到自己的程序中,并讓flash動(dòng)畫(huà)和自己的程序進(jìn)行交互。我們分為兩步來(lái)走:一、將flash動(dòng)畫(huà)嵌入自己的程序中,這一點(diǎn)比較簡(jiǎn)單,使用shockwave flash object控件就可以實(shí)現(xiàn)。這個(gè)控件在安裝flash的時(shí)候就裝到你的系統(tǒng)上了,二、在flash動(dòng)畫(huà)和自己的程序中傳遞消息進(jìn)行交互。這一點(diǎn)也是要通過(guò)控件來(lái)實(shí)現(xiàn),不過(guò)得在flash動(dòng)畫(huà)和自己的程序中做些處理。下面我們來(lái)具體說(shuō)明操作過(guò)程:一、將f

2、lash動(dòng)畫(huà)嵌入自己的程序中。所有在windows平臺(tái)上的支持ocx控件的軟件開(kāi)發(fā)工具都可以做到這一點(diǎn)。我使用的是vc+6.0,就以這個(gè)的做法來(lái)介紹。1、檢查你的系統(tǒng)上是否有shockwave flash object控件并已注冊(cè)。如果你的系統(tǒng)上裝有flash,則就有這個(gè)控件,否則的話,可以到網(wǎng)上下載一個(gè)過(guò)來(lái)安裝。2、新建一個(gè)MFC對(duì)話框應(yīng)用程序,假設(shè)命名為PlayFlash。3、添加shockwave flash object控件。建立對(duì)話框應(yīng)用程序后,在主菜單里選擇“工程-添加工程-components and controls”菜單選項(xiàng),這時(shí)會(huì)彈出一個(gè)components and con

3、trols gallery文件選擇對(duì)話框,里面有兩個(gè)文件夾,一個(gè)是registered activex controls,一個(gè)是visual c+components。選擇第一文件夾后會(huì)出現(xiàn)一系列系統(tǒng)上已注冊(cè)過(guò)的activex控件。在里面選擇shockwave flash object(如果你系統(tǒng)上沒(méi)這個(gè)控件,這里面就找不到了,可以去download個(gè)下來(lái)安裝,點(diǎn)擊insert將它插入工程。因?yàn)樵趘c中插入工程的控件要通過(guò)一個(gè)類來(lái)操作,所以這時(shí)vc會(huì)提示你為這個(gè)控件指定一個(gè)類名,可以使用默認(rèn)的類名就行了。插入后vc會(huì)自動(dòng)把這個(gè)類加入工程里面。4、生成一個(gè)該控件的對(duì)象。將shockwave fl

4、ash object控件成功插入自己的工程后,在vc對(duì)話框編輯器的controls面板上就會(huì)多出圖標(biāo),這個(gè)圖標(biāo)就是剛加入的控件的圖標(biāo)了。呵,這樣接下來(lái)怎么用就再清楚不過(guò)了吧。和使用BUTTON、EDIT 等其它windows控件一樣,把它拉到對(duì)話框上,給它關(guān)聯(lián)一個(gè)對(duì)象,對(duì)象的類就是我們剛才插入控件的時(shí)候所產(chǎn)生的類。我們可以使用這個(gè)類的成員函數(shù)來(lái)操縱這個(gè)對(duì)象,來(lái)進(jìn)行flash動(dòng)畫(huà)的控制以及和自己的程序進(jìn)行交互等操作了。這里假設(shè)關(guān)聯(lián)的對(duì)象名為:m_FlashPlayer。5、使用成員函數(shù)LoadMovie和Play來(lái)導(dǎo)入并播放動(dòng)畫(huà)。m_FlashPlayer.LoadMovie(0, strMov

5、ieUrl;該函數(shù)用來(lái)將動(dòng)畫(huà)導(dǎo)入程序中, strMovieUrl為要播放的flash路徑,要用絕對(duì)路徑。 m_FlashPlayer.Play(;調(diào)用該函數(shù)開(kāi)始播放動(dòng)畫(huà)。在初始化對(duì)話框的函數(shù)里面加入這兩個(gè)函數(shù)調(diào)用即可。怎么樣,現(xiàn)在運(yùn)行程序,看到flash嵌入到你的程序里面了吧。還有幾個(gè)常用的函數(shù)可以用來(lái)控制動(dòng)畫(huà)的播放,如GotoFrame(long FrameNum可以轉(zhuǎn)到FrameNum 偵播放(偵數(shù)從0開(kāi)始,StopPlay(可以停止播放。,還有很多,可以自己試試_。下面我們要介紹如果進(jìn)行交互性的控制了。二、在flash動(dòng)畫(huà)和自己的程序中傳遞消息進(jìn)行交互。把flash嵌入自己的程序后,用戶

6、在flash動(dòng)畫(huà)上面操作,想知道用戶進(jìn)行了什么操作,就得讓flash動(dòng)畫(huà)來(lái)告訴我們了。做過(guò)flash的人應(yīng)該知道flash的動(dòng)作腳本語(yǔ)言:Action Script。里面有個(gè)命令叫FSCommand(command,args;我們就是要通過(guò)這個(gè)命令向外部發(fā)送消息的。這個(gè)命令有兩個(gè)參數(shù),都是字符串,你可以在flash 腳本中指定任意的字符串。比如用戶按下flash動(dòng)畫(huà)的一個(gè)按鈕就發(fā)送FSCommand(bt,bt1這樣一個(gè)消息,按下另一個(gè)按鈕發(fā)送FSCommand(bt,bt2,而我們的程序收到FSCommand消息后就對(duì)通過(guò)兩個(gè)參數(shù)的不同字符串來(lái)判斷用戶按下的是哪個(gè)按鈕。原理就是這樣子的,要實(shí)

7、現(xiàn)的話就得在flash動(dòng)畫(huà)中使用FSCommand發(fā)送消息,在我們的程序接收和處理FSCommand消息了。flash部分的就不講了。那我們的程序如何才能接收這個(gè)消息呢?前面我們講到,shockwave flash object插入我們的程序后就可以象一個(gè)普通的windows控件那樣使用它了。要讓它接收并處理這個(gè)消息當(dāng)然是使用MFC的類向?qū)нM(jìn)行消息映射了。做法如下:1、添加消息處理函數(shù)。在主菜單中選擇“查看-類向?qū)А?在彈出的對(duì)話框中選擇消息映射,在左邊的列表框中選擇我們剛插入程序的shockwave flash object控件id,右邊選擇FSCommand,點(diǎn)擊AddFunction,這

8、樣就添加了一個(gè)FSCommand消息處理函數(shù)了。它的形式大概是這樣子的:void CPlayFlashDlg:OnFSCommandShockwaveflash1(LPCTSTR command, LPCTSTR args ;函數(shù)有兩個(gè)參數(shù),就是flash的Action SCript中FSCommand語(yǔ)句中的兩個(gè)參數(shù)。其實(shí)并不一定兩個(gè)參數(shù)都用到,flash腳本中可以就使用一個(gè)參數(shù),這樣這邊的函數(shù)就只要對(duì)第一個(gè)參數(shù)進(jìn)行處理就行了。2、編寫(xiě)消息處理代碼。在剛添加的FSCommand消息處理函數(shù)中,對(duì)兩個(gè)參數(shù)進(jìn)行處理。其實(shí)就是做字符串比較的操作,根據(jù)是什么字符串來(lái)判斷用戶進(jìn)行了什么操作。大概就是這

9、樣子的:void CPlayFlashDlg:OnFSCommandShockwaveflash1(LPCTSTR command, LPCTSTR args/ TODO: Add your control notification handler code hereif( 0 = strcmp(command,bt if( 0 = strcmp(args,enter MessageBox(歡迎進(jìn)入系統(tǒng)!;else if( 0 = strcmp(command,quit MessageBox(您選擇了退出!;CDialog:OnCancel(;這只是最簡(jiǎn)單的處理形式,當(dāng)然你可以在flash中發(fā)送復(fù)雜的字符串,在這邊就要進(jìn)行更多的處理了。三、設(shè)置和讀取flash動(dòng)畫(huà)中的變量。shockwave flash object還提供了兩個(gè)進(jìn)行交互的函數(shù),一個(gè)是CString GetVariable(LPCTSTR name,用來(lái)獲得flash動(dòng)畫(huà)中變量name的值,該值以CString 的形式返回給調(diào)用者;一個(gè)是void SetVariable(LPC

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論