在delphi中使用flash控件
發(fā)表時(shí)間:2024-02-22 來(lái)源:明輝站整理相關(guān)軟件相關(guān)文章人氣:
[摘要]---- FLASH是Macromedia公司出品的,用在互聯(lián)網(wǎng)上動(dòng)態(tài)的、可互動(dòng)的shockwave。它的優(yōu)點(diǎn)是體積小,可邊下載邊播放,這樣就避免了用戶長(zhǎng)時(shí)間的等待。 ---- FLASH可以用其生成動(dòng)畫(huà),還可在網(wǎng)頁(yè)中加入聲音。這樣你就能生成多媒體的圖形和界面,而使文件的體積卻很小。 -...
---- FLASH是Macromedia公司出品的,用在互聯(lián)網(wǎng)上動(dòng)態(tài)的、可互動(dòng)的shockwave。它的優(yōu)點(diǎn)是體積小,可邊下載邊播放,這樣就避免了用戶長(zhǎng)時(shí)間的等待。
---- FLASH可以用其生成動(dòng)畫(huà),還可在網(wǎng)頁(yè)中加入聲音。這樣你就能生成多媒體的圖形和界面,而使文件的體積卻很小。
---- FLASH雖然不可以象一門(mén)語(yǔ)言一樣進(jìn)行編程,但用其內(nèi)置的語(yǔ)句并結(jié)合JAVASCRIPE,您也可作出互動(dòng)性很強(qiáng)的主頁(yè)來(lái)。
---- FLASH另外一個(gè)特點(diǎn)就是必須安裝插件PLUG-IN,才能被瀏覽器所接受!當(dāng)然這也避免了瀏覽器之間的差異,使之一視同仁!
---- 但是你知道嗎?在delphi中可以直接打開(kāi)flash動(dòng)畫(huà),并控制它播放和停止。你還可以得到它的總幀數(shù),知道怎么實(shí)現(xiàn)的嗎?請(qǐng)跟我來(lái)。
---- 在delphi中的Component Import ActiveX Contrals...中選中 "Shockwave Flash(Version 1.0)",并單擊Install,會(huì)出現(xiàn)一個(gè)install窗口。
---- 如果要把它添加到一個(gè)已經(jīng)存在的包中,在"into existing package"對(duì)話框中的"File name:"窗口中選擇你想安裝的路徑,并單擊"OK";會(huì)彈出一個(gè)確認(rèn)的對(duì)話框,它問(wèn)你"Package dclusr50.bpl will be rebuilt. Continue?",單擊"Yes";在彈出的窗口中單擊擊"install",該插件就安裝完畢。
---- 如果要把它添加到一個(gè)新建的包中,在"into new package"對(duì)話框中的 "File name:"窗口中選擇你想安裝的路徑,并新建一個(gè)包,假如命名為test,并單擊"OK";它問(wèn)你"Package test.bpl will be built. Continue?",單擊"Yes"。 在彈出的窗口中單擊擊"install",該插件就安裝完畢。
---- 這時(shí),你會(huì)在控件條的ActiveX下發(fā)現(xiàn)一個(gè)新的控件,名字為ShokewaveFlash, 單擊它把它放在form中,在該form中放一個(gè)OpenDialog控件和一個(gè)panel,在該panel上放四個(gè)button,他們的caption屬性分別命名為"Openfile","Play","Stop","Close".設(shè)置panel1,ShockwaveFlash的Align 屬性分別為Alleft 和AlClient; 分別在這四個(gè)Button的OnClick事件中寫(xiě)下如下代碼:
procedure TForm1.Button1Click(Sender: TObject);
begin
if OpenDialog1.Execute then
ShockwaveFlash1.Movie:=
OpenDialog1.FileName;
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
ShockwaveFlash1.Play;
end;
procedure TForm1.Button3Click(Sender: TObject);
begin
ShockwaveFlash1.StopPlay;
end;
procedure TForm1.Button4Click(Sender: TObject);
begin
ShockwaveFlash1.FreeOnRelease;
close;
end;
---- 你可以得到打開(kāi)的flash圖像的總幀數(shù),在panel1上添加一個(gè)label,在form1的OnClick事件中寫(xiě)下如下代碼
procedure TForm1.FormCreate(Sender: TObject);
begin
label1.caption:=shockwaveflash.totalframes;
end;
你還可以控制該打開(kāi)的flash圖像從那一幀開(kāi)始播放,
在panel1上添加一個(gè)button和一個(gè)Edit控件,
在該button的OnClick事件中添加如下代碼。
if ShockwaveFlash1.playing then
ShockwaveFlash1.GotoFrame(SpinEdit1.Value);
ShockwaveFlash1.Play;
---- 在edit中填上你想跳到的幀,并單擊該button,你即可實(shí)現(xiàn)該功能。
---- 怎么樣,試試吧,效果還不錯(cuò)吧。