麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 學(xué)院 > 開發(fā)設(shè)計 > 正文

VisualBasic5.0中實現(xiàn)視頻畫中畫

2019-11-18 17:34:58
字體:
供稿:網(wǎng)友
在VISUALBAISC5.0中可以使用播放視頻動畫文件(*.AVI)的方法在我們的軟件中加入動畫效果,但在軟件中如何實現(xiàn)視頻畫中畫的效果呢?經(jīng)筆者摸索,發(fā)現(xiàn)利用WIDOWS95的API函數(shù)mciExecute、mciSendString和SetWindowPos可實現(xiàn)這一效果。

下面筆者以最常用的大畫面中疊加小畫面為例來說明視頻畫中畫的實現(xiàn)方法。

一、建立窗體。進入VISUALBAISC5.0系統(tǒng)環(huán)境,建立一個新的窗體FORM1。

二、建立視頻窗口。在這里筆者使用了一大一小的兩個圖畫框(PictureBox)作為視頻窗口。選擇控件工具箱中的PictureBox控件,在窗體中拉出兩個方框(Picture1和Picture2)。其中Picture1為大畫面,播放AVI01.AVI文件;Picture2為小畫面,播放AVI02.AVI文件。

三、編寫相應(yīng)控件的腳本。

通用模塊:

DeclareFunctionmciExecuteLib"winmm.dll"(ByVallpstrCommandAsString)AsLong

DeclareFunctionmciSendStringLib"winmm.dll"Alias"mciSendStringA"(ByVallpstrCommandAsString,ByVallpstrReturnStringAsString,ByValuReturnLengthAsLong,ByValhwndCallbackAsLong)AsLong
DeclareFunctionSetWindowPosLib"user32"(ByValhwndAsLong,ByValhWndInsertAfterAsLong,ByValxAsLong,ByValyAsLong,ByValcxAsLong,ByValcyAsLong,ByValwFlagsAsLong)AsLong

FORM1的ACTIVATE過程:

DimAAAsLong

DimPlayAviAsLong

DimtmpValAsString

DimKeyValSizeAsLong

OnErrorResumeNext

tmpVal=String$(1024,0)

KeyValSize=1024

PlayAvi=mciSendString("STATUSAVI01READY" Str(Picture2.hwnd),tmpVal,KeyValSize,0)

IfPlayAvi<>263Then

PlayAvi=mciExecute("closeAVI01")

EndIf

tmpVal=String$(1024,0)

KeyValSize=1024

PlayAvi=mciSendString("OPENAVI01.AVIALIASAVI01TYPEAVIVIDEOSTYLECHILDPARENT" Str(Picture2.hwnd) "WAIT",tmpVal,KeyValSize,0)

x1Pos=Picture1.Width

y1Pos=Picture1.Height

tmpVal=String$(1024,0)

KeyValSize=1024

AA=mciSendString("STATUSAVI01WINDOWHANDLEWAIT",tmpVal,KeyValSize,0)

If(Asc(Mid(tmpVal,KeyValSize,1))=0)Then

tmpVal=Left(tmpVal,KeyValSize-1)

Else

tmpVal=Left(tmpVal,KeyValSize)

EndIf

AA=SetWindowPos(tmpVal,0,0,0,x1Pos,y1Pos,0)

AA=mciExecute("WINDOWAVI01STATESHOW")

tmpVal=String$(1024,0)

KeyValSize=1024

PlayAvi=mciSendString("STATUSAVI02READY" Str(Picture1.hwnd),tmpVal,KeyValSize,0)

IfPlayAvi<>263Then

PlayAvi=mciExecute("CLOSEAVI02")

EndIf

tmpVal=String$(1024,0)

KeyValSize=1024

PlayAvi=mciSendString("OPENAVI02.AVIALIASAVI02TYPEAVIVIDEOSTYLECHILDPARENT" Str(Picture1.hwnd) "WAIT",tmpVal,KeyValSize,0)

x1Pos=Picture2.Width

y1Pos=Picture2.Height

tmpVal=String$(1024,0)

KeyValSize=1024

AA=mciSendString("STATUSAVI02WINDOWHANDLEWAIT",tmpVal,KeyValSize,0)

If(Asc(Mid(tmpVal,KeyValSize,1))=0)Then

tmpVal=Left(tmpVal,KeyValSize-1)

Else

tmpVal=Left(tmpVal,KeyValSize)

EndIf

AA=SetWindowPos(tmpVal,0,0,0,x1Pos,y1Pos,0)

MciExecute"WINDOWAVI02STATESHOW"

MciExecute"PLAYAVI01REPEAT"

MciExecute"PLAYAVI02REPEAT"

OnErrorGoTo0

FORM1的QueryUnload過程:

mciExecute"STOPAVI01"

mciExecute"STOPAVI02"

mciExecute"CLOSEAVI01"

mciExecute"CLOSEAVI02"

運行此程序可見兩個動畫同時播放,實現(xiàn)了視頻畫中畫的效果。以上程序在VISUALBAISC5.0及WINDOWS95中運行通過。->


發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 午夜精品成人一区二区 | 欧美精品在线视频观看 | 国产精品久久久久久久久岛 | 久久久久久亚洲综合影院红桃 | 草莓福利视频在线观看 | 2021国产精品 | 精国品产一区二区三区有限公司 | 一级黄色免费观看 | 黄色18网站 | 亚洲aⅴ在线观看 | 最近国产中文字幕 | 久久国产精品二区 | 激情综合婷婷久久 | 欧美成人午夜一区二区三区 | 国产在线观看91精品 | 久色亚洲| 成人毛片免费播放 | 狠狠干狠狠操 | 性爱视频在线免费 | 国产午夜亚洲精品理论片大丰影院 | 免费黄色大片网站 | 精品久久久久久久久久久aⅴ | 欧美视频一区二区三区 | 五月天堂av91久久久 | aaaaaaa毛片| 全黄性性激高免费视频 | 亚洲成人免费网站 | av亚洲在线观看 | 亚洲视色 | 在线2区 | 免费啪视频在线观看 | 国产大片免费看 | 懂色av懂色aⅴ精彩av | 亚洲精品永久视频 | 法国性hdfreexxxx人妖 | 免费三级大片 | 91色爱| 午夜小电影 | 黄色特级毛片 | 久久91亚洲人成电影网站 | 久草在线观看福利视频 |