VB課件版 第8章 圖形、文本和多媒體_第1頁
VB課件版 第8章 圖形、文本和多媒體_第2頁
VB課件版 第8章 圖形、文本和多媒體_第3頁
VB課件版 第8章 圖形、文本和多媒體_第4頁
VB課件版 第8章 圖形、文本和多媒體_第5頁
已閱讀5頁,還剩47頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

第8章圖形、文本和多媒體應(yīng)用繪制圖形彩色位圖圖像處理設(shè)置文本多媒體應(yīng)用8.1繪制圖形8.1.1坐標系坐標系用于確定容器中點的位置,任何容器的默認原點坐標都是容器的左上角(0,0)。如圖8.1所示,坐標系包括橫坐標(X軸)和縱坐標(Y軸),從原點出發(fā)向右方向為X軸的正方向,垂直向下是Y軸的正方向。x值是指點與原點的水平距離,y值是指點與原點的垂直距離。原點(0,0)LeftTopX軸Y軸圖8.1坐標系8.1.2坐標刻度1.ScaleMode屬性ScaleMode屬性是用來設(shè)置坐標系的標準刻度,ScaleMode屬性的設(shè)置值如表8.1所示。設(shè)置值描述0-User用戶定義。通過設(shè)置ScaleWidth、ScaleHeight、ScaleTop或ScaleLeft屬性來定義新坐標系。1-Twip緹(默認),567緹等于一厘米。2-Point磅,72磅等于一英寸。3-Pixel像素,像素是監(jiān)視器或打印機分辨率的最小單位。4-Character字符,打印時一個字符有1/6英寸高、1/12英寸寬。5-Inch英寸。6-Millimeter毫米。7-Centimeter厘米。表8.1ScaleMode屬性設(shè)置值例如,以下為設(shè)置對象刻度單位的語句: Picture1.ScaleMode=3 '設(shè)置圖片框Picture1的刻度單位為像素 ScaleMode=4 '設(shè)置窗體的刻度單位為字符8.1.2坐標刻度2.刻度屬性對象的屬性“按分類序”顯示時,“縮放”類的屬性有ScaleTop、ScaleLeft、ScaleWidth和ScaleHeight,都是設(shè)置坐標系的用戶定義刻度的屬性。當設(shè)置了刻度屬性時,ScaleMode屬性自動為0。ScaleLeft和ScaleTop屬性指定對象左上角的水平和垂直坐標。例如,設(shè)置在窗體的左上角原點坐標值為(10,10): ScaleLeft=10 ScaleTop=10 程序分析:原點即左上角的坐標值變?yōu)?10,10),即橫坐標起點是10,縱坐標起點為10。ScaleWidth和ScaleHeight屬性是設(shè)置用戶定義刻度,根據(jù)對象內(nèi)可用區(qū)域的當前寬度和高度(不包括邊框、菜單欄和標題欄)來定義刻度。例如,定義窗體的刻度: ScaleWidth=10 ScaleHeight=5程序分析:當前窗體的橫坐標刻度為

1/10寬度;縱坐標刻度為

1/5高度。如果窗體的大小被調(diào)整,刻度單位仍保持。8.1.2坐標刻度3.Scale方法Scale方法用于為窗體、圖片框或Printer對象設(shè)置新的坐標系。語法:

[對象.]Scale(x1,y1)–(x2,y2)例如,將窗體與前面設(shè)置的刻度相同,左上角和右下角分別設(shè)置為(10,10)和(20,15),運行界面如圖8.2所示:PrivateSubForm_Load()'裝載窗體Scale(10,10)-(20,15) Text1.Move15

EndSub

圖8.2界面顯示原點(10,10)10558.1.3設(shè)置顏色1.RGB函數(shù)RGB函數(shù)用于在運行時指定顏色值,是比較常用的函數(shù)。對計算機來說,屏幕顯示的顏色可以調(diào)成16色、256色,甚至達到成千上萬色彩的真彩色模式。其實,不管使用哪一種顯示模式都是運用三種原色:紅色、綠色和藍色。語法:

RGB(紅,綠,藍)其中紅,綠,藍指三種顏色的成分,取值都在0~255之間。如果超過255也看成是255。每種顏色是由三種顏色的相對亮度組合而成的。表8.2為三原色相對亮度組合的顏色。顏色紅色值綠色值藍色值黑色000藍色00255綠色02550青色0255255紅色25500洋紅色2550255黃色2552550白色255255255表8.2三原色的相對亮度組合8.1.3設(shè)置顏色2.QBColor函數(shù)QBColor函數(shù)用來設(shè)置所對應(yīng)顏色的RGB顏色碼。語法:

QBColor(顏色參數(shù))其中,顏色參數(shù)是在0~15之間的顏色值,每種顏色值對應(yīng)的顏色如表8.3所示。顏色參數(shù)顏色參數(shù)顏色藍色值0黑色8灰色1藍色9亮藍色2綠色10亮綠色3青色11亮青色4紅色12亮紅色5洋紅色13亮洋紅色6黃色14亮黃色7白色15亮白色表8.3QBColor指定的顏色8.1.3設(shè)置顏色3.通過內(nèi)部常數(shù)來設(shè)置顏色VB將經(jīng)常使用的顏色值定義為內(nèi)部常數(shù),內(nèi)部常數(shù)如表8.4所示。顏色常數(shù)十六進制數(shù)顏色vbBlack&H0黑色vbRed&HFF紅色vbGreen&HFF00綠色vbYellow&HFFFF黃色vbBlue&HFF0000藍色vbMagenta&HFF00FF洋紅色vbCyan&HFFFF00青色vbWhite&HFFFFFF白色表8.4常用顏色值常數(shù)8.1.4圖形控件直線控件和形狀控件可以通過常用屬性來設(shè)置其線型、顏色等,常用屬性如表8.5所示??丶傩怨δ躄ine和ShapeBorderColor線段的顏色BorderStyle線段的線型,是實線還是虛線,以及虛線的樣式BorderWidth線段的粗細LineX1、Y1起點坐標X2、Y2線段的長短ShapeShape預定義的形狀,如表8.6所示FillColor圖形的填充色FillStyle圖形底紋,有8種底紋BackStyle圖形背景式樣0-Transparent透明1-Opaque不透明表8.5常用屬性8.1.4圖形控件形狀控件的Shape屬性提供了六種預定義的形狀,如表8.6所示。設(shè)置值常數(shù)描述形狀0-RectangleVbShapeRectangle(默認)矩形

1-SquareVbShapeSquare正方形2-OvalVbShapeOval橢圓形

3-CircleVbShapeCircle圓形4-RoundedRectangleVbShapeRoundedRectangle圓角矩形5-RoundedSquareVbShapeRoundedSquare圓角正方形表8.6預定義形狀8.1.4圖形控件【例8-1】使用組合框顯示形狀控件的形狀、底紋和顏色。界面設(shè)計:使用三個組合框Combo1~Combo3來實現(xiàn)形狀控件的形狀、底紋和顏色屬性的設(shè)置。運行界面如圖8.3所示。程序代碼如下。圖8.3界面顯示8.1.5繪圖方法1.Cls方法Cls方法用于清除所有圖形方法和Print方法顯示的文本或圖形,并將光標移到原點位置。但不能清除界面中的控件。例如,清除圖片框中的文本或圖形: Picture1.cls 2.CurrentX和CurrentY屬性CurrentX和CurrentY屬性用于設(shè)置當前的水平和垂直坐標,即下一次繪圖或打印的起點坐標,只能在運行時使用。3.AutoRedraw屬性AutoRedraw屬性是自動重畫。AutoRedraw屬性默認時為False,則圖形不具有持久性,當窗體被覆蓋或擴大窗體都會使圖形丟失。AutoRedraw屬性為True時,圖形具有持久性,當窗體被其他窗體覆蓋,重新移出時窗體、圖片框中的圖形和用Print方法顯示的文本的會重新顯示。8.1.5繪圖方法4.Pset方法Pset方法用于畫點,即設(shè)置指定點處像素的顏色。語法:

[對象.]Pset[Step](x,y)[,顏色]說明:對象是指繪圖的容器對象,如果省略則指當前窗體。(x,y)是畫點處的坐標,為Single型。Step表示與當前坐標的相對位置。顏色用來設(shè)置畫點的顏色,如果沒有顏色參數(shù),則為前景色。使用Pset方法與定時器結(jié)合,每畫完一點都延時一下,就實現(xiàn)動畫地繪制曲線。8.1.5繪圖方法【例8-2】使用畫點的方法畫出正弦曲線,單擊“正弦曲線”按鈕用動畫的方式畫正弦曲線,單擊“平移曲線”按鈕畫出一組正弦曲線。(1)界面設(shè)計使用一個圖片框Picture1作為容器,兩個按鈕Command1和Command2分別為“正弦曲線”和“平移曲線”按鈕,一個定時器Timer1用來實現(xiàn)動畫。(2)設(shè)置定時器Interval屬性為10,每10毫秒定時一次,Enabled屬性為False,則程序啟動時定時器無效。8.1.5繪圖方法(3)程序設(shè)計裝載窗體時設(shè)置圖片框的坐標系,并清除圖片框內(nèi)容。PrivateSubForm_Load()'裝載窗體Picture1.AutoRedraw=TruePicture1.Scale(0,0)-(640,480)Picture1.ClsEndSub

PrivateSubCommand1_Click()'單擊正弦曲線按鈕Timer1.Enabled=True '定時器有效EndSub8.1.5繪圖方法定時器時間到就畫一點,計算每點的橫坐標和縱坐標的值,用紅色的點連成正弦曲線。如圖8.4(a)所示運行界面,單擊“正弦曲線”按鈕。PrivateSubTimer1_Timer()'正弦曲線的動畫繪制DimxAsInteger,yAsIntegerDimscaleYAsSingleStaticiAsInteger'正弦曲線一半高度為Picture1的四分之一scaleY=Picture1.ScaleHeight/4Picture1.CurrentX=0Picture1.CurrentY=Picture1.ScaleHeight/2i=i+1x=i/180*scaleYy=Sin(3.14/180*i)*scaleYPicture1.PSetStep(x,-y),vbRedEndSub8.1.5繪圖方法單擊平移曲線按鈕,可以使用循環(huán)繪制一組正弦曲線,每條曲線垂直平移。運行界面如圖8.4(b)所示。PrivateSubCommand2_Click()'單擊平移曲線DimmAsInteger,nAsIntegerDimscaleYAsSingleDimxAsInteger,yAsIntegerscaleY=Picture1.ScaleHeight/4Form=-100To100Step10Forn=0To360Picture1.CurrentX=Picture1.ScaleWidth/4Picture1.CurrentY=Picture1.ScaleHeight/2+mx=n/180*scaleYy=Sin(3.14/180*n)*scaleYPicture1.PSetStep(x,-y),vbBlueNextnNextmEndSub

8.1.5繪圖方法5.Line方法Line方法用于畫線,可以畫單個線段,也可以畫矩形。語法:

[對象].Line[[Step](x1,y1)]–[Step](x2,y2)[,顏色],[B][F]說明:(x1,y1):為起點坐標,如果省略則為當前坐標。帶Step關(guān)鍵字時表示與當前坐標的相對位置。(x2,y2):為終點坐標。帶Step關(guān)鍵字時表示與起點坐標的相對位置。B:表示利用對角坐標畫矩形。F:表示當使用了B選項,用邊框顏色填充矩形。例如,下面兩條語句畫線的功能相同: Line(500,500)-(1500,1000) Line(500,500)-Step(1000,500)8.1.5繪圖方法【例8-3】在圖片框中使用Line方法畫矩形。功能要求:在文本框Text1和Text2中輸入矩形的長和寬的長度,在圖片框Picture1中畫矩形。運行界面如圖8.5所示。PrivateSubCommand1_Click()'單擊畫圖按鈕DimWAsInteger,HAsIntegerW=Val(Text1.Text)H=Val(Text2.Text)IfW<>0AndH<>0ThenPicture1.Line(0,0)-Step(W,0)Picture1.Line-Step(0,H)Picture1.Line-Step(-W,0)Picture1.Line-Step(0,-H)EndIfEndSub8.1.5繪圖方法6.Circle方法Circle方法可用于在對象上畫圓、橢圓或圓弧。語法:

[對象.]Circle[Step](x,y),半徑[,顏色,起點,終點,縱橫比]說明:(x,y):是圓、橢圓或圓弧的中心坐標。帶Step關(guān)鍵字時表示與當前坐標的相對位置。起點和終點:是指以弧度為單位的圓弧的起點和終點位置,取值在-2π~2π之間。當起點或終點加負號時,畫圓弧后再畫一條連接圓心到端點的線??v橫比:決定是畫圓還是橢圓,可以是整數(shù)也可以是小數(shù),但不能是負數(shù)。當縱橫比大于1時,橢圓沿垂直軸線拉長,而小于1時則沿水平軸線拉長。半徑是圓、橢圓或圓弧的半徑,如果畫橢圓則對應(yīng)其長軸,如果縱橫比小于1,半徑是水平方向的;而大于等于

1,則是垂直方向。執(zhí)行完Circle方法后,當前坐標為中心點坐標。8.1.5繪圖方法【例8-4】在圖片框中使用Circle方法畫四色的餅圖。功能要求:從四個文本框Text1~Text4中輸入班級中優(yōu)、良、及格和不及格的人數(shù),計算所占的百分比,然后分別用不同的顏色繪制出橢圓的餅圖。運行界面如圖8.6所示。程序代碼如下。圖8.6界面顯示8.1.5繪圖方法7.PaintPicture方法PaintPicture方法用于在Form、PictureBox或打印機上繪制出圖形文件的內(nèi)容,圖形文件類型包括.bmp、.wmf、.emf、.cur和.ico等。語法:

[對象].PaintPicture圖片,x1,y1,[寬度1,[高度1,x2[,y2[,寬度2[,高度2[,位操作常數(shù)]]]]]]說明:對象:指目標對象,可以是Form、

PictureBox或

Printer,默認為當前窗體。圖片:指源圖形文件,可以是Form或PictureBox的Picture屬性指定的圖形文件。x1,y1:指在目標對象上繪制圖片的坐標(x,y),由對象的ScaleMode屬性決定度量單位。寬度1,高度1:目標對象的寬度或高度,由對象的ScaleMode屬性決定度量單位。如果省略,則指整個圖片的寬度或高度。x2,y2:指源圖片內(nèi)剪貼區(qū)的左上角坐標,默認為(0,0)。寬度2,高度2:指源圖片內(nèi)剪貼區(qū)的寬度或高度,默認為整個圖片的寬度或高度。如果寬度1、高度1比寬度2、高度2大或小,將適當?shù)乩旎驂嚎s圖片。位操作常數(shù):用來定義在將圖片繪制到對象上時執(zhí)行的位操作。8.1.5繪圖方法例如,將窗體中的Picture1中的圖形的部分圖形放大顯示在Picture2中,運行界面如圖8.7所示,左邊是源位圖右邊是放大的目標位圖。圖8.7繪制圖片界面程序代碼如下:Picture2.PaintPicturePicture1.Picture,0,0,Picture2.Width,Picture2.Height,0,0,500,600源圖片是Picture1的從(0,0)位置開始寬度為500高度為600的部分圖片,顯示到Picture2中,目標圖片從(0,0)位置開始寬度為Picture2.Width高度為Picture2.Height。8.2彩色位圖圖像處理1.彩色圖像顏色值的獲取在窗體中可以用圖片框控件(PictureBox)來顯示圖形,圖形裝入圖片框后,使用Piont方法獲取圖像上指定像素的顏色值。語法:

對象.Point(x,y)說明:x和y為對象中某個像素的位置坐標。如果由

x和

y坐標所引用的點位于對象之外,Point方法將返回

-1。Point方法返回值為長整型。例如,獲取(i,j)位置的像素顏色值:DimColAsLongCol=Picture1.Point(i,j)8.2彩色位圖圖像處理2.彩色位圖顏色值的分解像素顏色值是一個長整型的數(shù)值,使用四個字節(jié),最上位字節(jié)的值是“0”,其它三個字節(jié)依次為B、G、R,取值范圍為0~255??梢允褂肦GB函數(shù)來設(shè)置像素的顏色值,用Pset方法將每個像素畫到圖片框中。

設(shè)置圖像像素顏色的方法:DimColAsLongDimRedAsInteger,GreenAsInteger,BlueAsIntegerCol=Picture1.Point(i,j)Red=Col&And&HFFGreen=((Col&And&HFF00)\256)Mod256Blue=(Col&And&HFF0000)\65536Picture2.PSet(x,y),RGB(Red,Green,Blue)通過顏色值的存儲內(nèi)容,取Red的運算如圖8.8所示。Col0BGR000FFRed000R8.2彩色位圖圖像處理3.繪制彩色位圖的步驟

(1)定義一個三維數(shù)組,用來存放每個像素的顏色值。例如,三維數(shù)組ImageP(2,x,y)用來存放(x,y)坐標的像素值,第一維對應(yīng)于顏色0、1、2表示紅、綠、藍;“x”對應(yīng)于圖形像素的行;“y”對應(yīng)于圖形像素的列。(2)使用Piont方法用雙重循環(huán)來讀取每個像素的值,存放在三維數(shù)組ImageP(2,x,y)中;(3)對顏色進行效果運算后,再將每個像素的顏色用Pset方法畫到圖片框中?!纠?-5】將圖片框的圖像進行反轉(zhuǎn)顯示。(1)定義一個三維數(shù)組(2)在窗體中放置兩個圖片框Picture1和Picture2,設(shè)置Picture1的Picture屬性為圖形文件.bmp,設(shè)置Picture1和Picture2的ScaleMode屬性設(shè)置為3(Pixel)。(3)單擊“掃描圖形”按鈕Command1,獲取圖片框Picture1中每個像素的顏色值存放在三維數(shù)組ImageP中,程序代碼如下。8.2彩色位圖圖像處理(4)單擊“反轉(zhuǎn)圖片”按鈕將Picture1圖片框的像素值進行反轉(zhuǎn)運算,用Pset方法畫到圖片框Picture2中。反轉(zhuǎn)圖片就是將圖形中每個像素的顏色改為其互補色,例如,純黑色像素的互補色為白色。反轉(zhuǎn)處理的算法:新像素數(shù)值=255-原像素值程序代碼如下:PrivateSubCommand2_Click()'單擊反轉(zhuǎn)圖片按鈕Dimi,jAsIntegerDimRed,Green,BlueAsIntegerForm1.MousePointer=11Forj=0ToPicture2.Height-1Fori=0ToPicture2.Width-1Red=255-ImageP(0,i,j)Green=255-ImageP(1,i,j)Blue=255-ImageP(2,i,j)Picture2.PSet(i,j),RGB(Red,Green,Blue)NextNextForm1.MousePointer=0EndSub8.2彩色位圖圖像處理運行界面如圖8.9所示。圖8.9界面顯示8.3設(shè)置文本8.3.1文本字體1.Font屬性窗體、控件和打印機都具有用于設(shè)置字體的Font屬性。Font屬性實際上是一個Font對象,在設(shè)計時Font對象不能直接使用,需要在屬性窗口中通過雙擊“屬性”窗口中的

按鈕打開“字體”對話框,在對話框中對字體進行設(shè)定,如圖8.10所示。圖8.10字體對話框8.3.1文本字體在運行時,通過設(shè)定Font對象屬性來設(shè)置字體的特征。Font對象的屬性如表8.6所示。Font對象的屬性與早期VB版本的FontName、FontBold等保持兼容。屬性名數(shù)據(jù)類型描述NameString字體的名字。例如,宋體、Arial等SizeSingle字體的大小(每磅=1/72英寸)BoldBoolean粗體ItalicBoolean斜體StrikeThroughBoolean刪除線UnderlineBoolean下劃線WeightInteger字體的粗細,值越大字體越粗。表8.6Font對象的屬性例如,設(shè)置窗體Form1的字體為12號粗體: Form1.Font.Size=12 Form1.Font.Bold=True8.3.1文本字體2.TextHeight和TextWidth方法TextHeight和TextWidth方法用于返回Form、PictureBox或打印機的當前字體的高度和寬度。語法:

[對象].TextHeight(字符串)

[對象].TextWidth(字符串)【例8-6】單擊窗體時用Print方法居中顯示“學生管理系統(tǒng)”的文本,對不同大小的窗體都能居中顯示。PrivateSubForm_Click()'單擊窗體DimmsgAsStringForm1.Font.Size=20Form1.Font.Bold=TrueForm1.Font.Name="宋體"msg="學生管理系統(tǒng)"CurrentX=(ScaleWidth-TextWidth(msg))/2PrintmsgEndSub8.3.1文本字體運行后結(jié)果顯示如圖8.11所示。圖8.11運行界面8.3.2打印1.使用“打印”菜單如果用戶希望打印當前窗體和窗體中的代碼,甚至整個工程的所有窗體和程序代碼,可以選擇“文件”菜單“打印設(shè)置”菜單項,選擇打印用的打印機及相關(guān)參數(shù);然后再使用“文件”菜單“打印”菜單項,設(shè)定打印的范圍、打印對象及打印質(zhì)量等。如圖8.12所示為打印對話框,可以選擇打印窗體圖像和代碼。圖8.12打印對話框8.3.2打印2.Printer對象Printer對象用于把程序的運行結(jié)果打印出來。Printer對象的屬性包括:PaperSize-打印紙規(guī)格

Height-紙張物理高度Width-紙張物理寬度

Orientation-橫向還是縱向ColorMode-單色還是彩色

Duplex-是否雙面Page-當前頁號

Zoom-擴大或縮小Port-打印機端口

Copies-打印份數(shù)PaperBin-送紙方式

PrintQuality-打印質(zhì)量Printer對象的屬性應(yīng)通過程序代碼進行設(shè)置,在設(shè)計時不可用。初始化時為Windows“控制面板”中設(shè)置的打印機屬性。在一頁當中,一旦設(shè)置了某個屬性,就不能改變,對這些屬性的改變只能影響以后各頁。8.3.2打印3.PrintForm方法PrintForm用于將指定的窗體Form的圖像逐位發(fā)送給打印機。語法:

[對象].PrintForm其中,對象如果省略,則為帶焦點的Form對象。PrintForm將打印Form對象的全部內(nèi)容,即使窗體的某部分在屏幕上不可見。只有當AutoRedraw屬性為True時PrintForm才打印Form或PictureBox控件上的圖形。8.4多媒體應(yīng)用8.4.1Animation控件Animation控件是ActiveX控件,在使用之前在“部件”選項卡中選擇“MicrosoftWindowsCommonControl-25.0”復選按鈕,控件箱中就添加了Animation控件。將該控件放置到窗體中,則如圖8.13所示。圖8.13Animation控件8.4.1Animation控件1.屬性AutoPlay屬性用于確定Animation控件是否開始播放.avi文件。如果設(shè)置為True,則一旦將.avi文件加載到Animation控件中,.avi文件就將連續(xù)循環(huán)地自動播放,用Stop方法也不能停止。設(shè)置為False時,必須使用Play方法來播放.avi文件。2.播放的步驟使用Animation控件播放無聲的“.avi”文件時,需要先使用Open方法打開要播放的文件,再使用Play方法進行播放,使用Stop方法可以停止播放,播放結(jié)束后應(yīng)使用Close方法關(guān)閉文件。(1)Open方法Open方法用于打開一個要播放的.avi文件。語法:

對象.Open文件名(2)Play方法Play方法用于播放.avi文件。語法:

對象.Play[重復播放的次數(shù),開始幀,結(jié)束幀]8.4.1Animation控件例如,從第2幀開始到第5幀播放兩遍: anmavi.Play2,2,5(3)Stop方法Stop方法用于終止播放.avi文件。(4)Close方法Close方法用于關(guān)閉當前打開的AVI文件。如果沒有加載任何文件,則不執(zhí)行任何操作。8.4.1Animation控件【例8-7】用Animation控件播放一個無聲的.avi文件。功能要求:窗體有兩個按鈕“開始”和“停止”(Command1和Command2),單擊按鈕分別用于播放和停止播放,一個Animation控件Animation1用來播放.avi文件,本程序播放的是“..\microsoftvisualstudio\common\graphics\videos\Search.avi”文件。運行程序界面如圖8.14所示。圖8.14動畫播放運行界面8.4.1Animation控件程序代碼如下:PrivateSubcmdPlay_Click()'打開.avi文件并開始播放 Animavi.Open"c:\microsoftvisualstudio\common\graphics\videos\Search.avi" Animavi.PlayEndSub

PrivateSubcmdStop_Click()'停止播放 Animavi.StopEndSub8.4.2MMControl控件MMControl控件是ActiveX控件,因此在使用之前必須將其添加到工具箱中。在“部件”選項卡中選擇“MicrosoftMultimediaControl6.0”復選按鈕,就在工具箱添加了Multimedia控件。將該控件放置到窗體中,則如圖8.15所示。MMControl控件與大家熟悉的錄音機或VCD機上的按鈕相似,從左到右共9個,分別是Prev(前一個)、Next(下一個)、Play(播放)、Pause(暫停)、Back(向后步進)、Step(向前步進)、Stop(停止)、Record(錄制)和Eject(彈出)。圖8.15Multimedia控件8.4.2MMControl控件1.MCI命令和Command屬性MCI命令是與設(shè)備無關(guān)的命令,可以控制各種不同的多媒體設(shè)備,很多命令都與圖8.15中相應(yīng)的命令按鈕相對應(yīng)。MCI命令如表8.7所示。命令功能命令功能Open打開MCI設(shè)備Close關(guān)閉MCI設(shè)備Play播放MCI設(shè)備Pause暫停播放和錄制MCI設(shè)備Back向后步進可用的曲目Step向前步進可用的曲目Stop停止MCI設(shè)備Record錄制MCI設(shè)備的輸入Eject從CD驅(qū)動器中彈出CDSave保存打開的文件Prev跳到當前曲目的起始位置Seek向前或向后查找曲目表8.7MMControl控件的MCI命令8.4.2MMControl控件MMControl控件的Command屬性用于啟動MCI命令。例如,打開、播放和關(guān)閉多媒體文件: MMControl1.FileName="C:\FileName1" MMControl1.Command="Open" MMControl1.Command="Play" MMControl1.Command="Close"8.4.2MMControl控件2.常用屬性(1)FileName屬性FileName屬性用來指定要打開或保存的文件名。(2)Notify屬性Notify屬性返回控制命令的執(zhí)行結(jié)果,如果設(shè)置為True,那么在下一條命令完成時產(chǎn)生一個回調(diào)事件(Done)。Done事件提供有用的反饋信息以指出命令是否被成功地執(zhí)行。(3)DeviceType屬性DeviceType屬性用于指定MCI設(shè)備的類型。表8.8列出了MMControl控件支持的MCI設(shè)備,其中列出文件類型的是復合設(shè)備。8.4.2MMControl控件DeviceType屬性文件類型含義CDAudio音頻CD播放器。Dat數(shù)字音頻磁帶播放器。DigitalVideo數(shù)字視頻。Other未定義MCI設(shè)備。Overlay覆蓋設(shè)備。Scanner圖像掃描儀。Sequencer.mdiMIDI發(fā)生器。VCR視頻磁帶錄放器。AVIVideo.avi視頻文件。Videodisc視盤播放器。Waveaudio.wav播放數(shù)字波形文件的音頻設(shè)備,如聲卡。MPEGVideo.mpg播放電影文件。表8.8MMControl控件支持的MCI設(shè)備8.4.2MMControl控件(4)AutoEnable屬性AutoEnable屬性用于決定系統(tǒng)是否自動檢測MMControl控件各按鈕的狀態(tài),默認值為True。當AutoEnable屬性為False時,所有按鈕將以灰色顯示。(5)PlayEnable和PlayVisible屬性PlayEnable屬性用來設(shè)置MMControl控件的各按鈕是否處于有效狀態(tài),默認為False是無效狀態(tài)。PlayVisible屬性用于設(shè)置MMControl控件的各按鈕是否可視,默認為True可視??梢允褂脤傩皂搧碓O(shè)置PlayEnable和PlayVisible屬性,用鼠標右鍵單擊MMControl控件,選擇“屬性”菜單項,出現(xiàn)如圖8.16所示的屬性頁。圖8.16屬性頁8.4.2MMControl控件3.播放視頻文件在VB中窗體和控件都有句柄,為了得到一個窗體或控

溫馨提示

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

評論

0/150

提交評論