用VB6.0制作多媒體影集
發(fā)表時(shí)間:2024-02-22 來(lái)源:明輝站整理相關(guān)軟件相關(guān)文章人氣:
[摘要]郝衛(wèi)娟 當(dāng)好友相聚時(shí),如果你能夠拿出親手制作的一本多媒體影集,相信那優(yōu)美的背景音樂和讓人眼花繚亂的特技效果一定會(huì)令他們贊嘆不已! 其實(shí),這并不復(fù)雜,只要肯花些功夫,相信你一定可以制作出很好的作品!下面讓我們用VB開始工作吧! 一、創(chuàng)建運(yùn)行界面 在Form1窗口添加以下主要控件: ...
郝衛(wèi)娟
當(dāng)好友相聚時(shí),如果你能夠拿出親手制作的一本多媒體影集,相信那優(yōu)美的背景音樂和讓人眼花繚亂的特技效果一定會(huì)令他們贊嘆不已!
其實(shí),這并不復(fù)雜,只要肯花些功夫,相信你一定可以制作出很好的作品!下面讓我們用VB開始工作吧!
一、創(chuàng)建運(yùn)行界面
在Form1窗口添加以下主要控件:
圖片框PictureBox(picdest,picsource):用以演示圖片素材。
定時(shí)器 (Timer1):控制音樂的循環(huán)播放。
定時(shí)器 (Timer2):控制圖片的循環(huán)播放。
媒體控制對(duì)象Microsoft Multimedia Control(mciwave):用以播放音樂。
二、編寫相片演示程序代碼
常見的特技圖像顯示方式主要有掃描、移動(dòng)、百葉窗、馬賽克等。在這里,我們只示范二個(gè)常用的繪圖方式,如果有興趣,完全可以在此基礎(chǔ)上加以改動(dòng),得到更多的花樣。本文主要是用VB中的paintpicture方法來(lái)實(shí)現(xiàn)。
1) 掃描顯示方式
掃描顯示是動(dòng)態(tài)繪圖技巧的最基本形式,其原理是將源圖像一行一行或一列一列地復(fù)制到目標(biāo)區(qū)域,配合稍許的時(shí)間延遲及數(shù)據(jù)復(fù)制的方向,從屏幕上看就像是向下或向右依次將圖形掃描出來(lái)。
由上至下掃描顯示的實(shí)現(xiàn)方法是:從圖像的頂部向下一行一行地從源對(duì)象中將位圖復(fù)制到目標(biāo)對(duì)象中,每復(fù)制一行后都加上一定的延時(shí)。下面的代碼將實(shí)現(xiàn)向下掃描顯示。(代碼中dest為目標(biāo)對(duì)象,source為源對(duì)象,dtime為延遲時(shí)間。顯示圖像已裝入source。)
For j = 1 To 100
dest.PaintPicture source.Picture, 0, 0, picwidth, j stepy, 0, 0, picwidth, j stepy
Sleep dtime
Next j
根據(jù)掃描方向的不同,還有向上、向左、向右、水平平分和垂直平分等多種,其實(shí)現(xiàn)代碼大致相仿。
2) 百葉窗顯示方式
百葉窗顯示方式,就如關(guān)閉百葉窗一樣,圖像被分成一條一條地顯示出來(lái)。百頁(yè)窗顯示方式可分為垂直和水平兩種形式。
垂直百葉窗顯示的實(shí)現(xiàn)技巧是,首先將圖像垂直等分為n部分,分n次完成每部分圖像的向下掃描顯示。但掃描顯示時(shí),依照差值掃描進(jìn)行,即第i次顯示i、i+n、...i+jn、...條掃描線,比如第1次顯示1、9、17...條掃描線,第2次顯示2、10、18...條掃描線,直到圖像完整顯示。
垂直百葉窗顯示代碼如下:
scanline = n
For i = 0 To (scanline - 1)
For j = i To picwidth Step scanline
dest.PaintPicture source.Picture, j, 0, 1,
picheight, j, 0, 1, picheight
Next j
Next i
實(shí)現(xiàn)水平百葉窗顯示時(shí),原理與上同,循環(huán)體代碼修改如下即可:
dest.PaintPicture source.Picture, 0, j, picwidth, 1, 0, j, picwidth, 1
三、編寫背景音樂程序代碼
1)關(guān)閉音樂closemusic()
If Not mciwave.Mode = 524
Then mciwave.Command =″close″
2)播放音樂playmusic()
closemusic
mciwave.DeviceType = ″WaveAudio″
mciwave.FileName =App.Path + ″\music\″+ ″
tears.wav″ ′在此處可以將你喜愛的音樂文件加入
mciwave.Command=″Open″
mciwave.Command = ″Play″
3)音樂播放完后設(shè)置重播狀態(tài)mciwave-Done(NotifyCode As Integer)
If firstflag Then firstflag = False
Timer2.Enabled = True
Timer2.Interval = 1000
4)定時(shí)器定時(shí)播放音樂Private Sub Timer2-Timer()
Timer2.Enabled=False
Playmusic
firstflag = True