摘 "要: 使用瀏覽圖片軟件可以方便快捷地瀏覽、查找圖片。圖片瀏覽軟件有很多, Visual Basic 為應(yīng)用程序的使用提供了豐富的圖形圖像功能。在實(shí)際編程過程中,要實(shí)現(xiàn)如ACDSee等圖形工具軟件的打開和圖片瀏覽功能,即能夠方便地切換驅(qū)動器和文件夾在機(jī)器上瀏覽打開圖片。通過使用Visual Basic應(yīng)用程序能夠響應(yīng)鼠標(biāo)按鈕及與SHIFT、CTRL或ALT鍵的各種組合事件的功能,可以很方便地實(shí)現(xiàn)圖像的瀏覽打開功能。
關(guān)鍵詞: VB; 圖片框; 圖像框; 圖片瀏覽
中圖分類號: TN964?34 " " " " " " " " " 文獻(xiàn)標(biāo)識碼: A " " " " " " " " " " " " " "文章編號: 1004?373X(2015)06?0063?02
ACDSee production based on VB
JI Xiao?yun
(Computer Teaching and Research Department, Bohai University, Liaoning 121000, China)
Abstract: Pictures can be browsed and found conveniently by means of picture browse software. There are a lot of ready?made picture browse softwares. Visual Basic provides rich graphic image functions for application program. In the process of the actual programming, if wants to realize the image opening and browsing functions as some graphical tool softwares like ACDSee can do, namely switching drive and folder easily to open the pictures in the machine, Visual Basic should be used to respond to the functions of the various combination events of mouse button and SHIFT, CTRL or ALT key, which can easily implement image browsing open function. How to use Visual Basic to enjoy the pictures is introduced in detail in this paper.
Keywords: VB; picture box; image box; picture browse
圖片瀏覽軟件的主要操作對象是各種類型的圖片,而VB作為一種可視化的程序設(shè)計(jì)語言,對于圖片元素的操作非常靈活,下面介紹使用VB如何DIY看圖軟件。
1 "看圖軟件界面的設(shè)計(jì)
分析當(dāng)前的看圖軟件,一般情況看圖軟件由兩個(gè)界面構(gòu)成。第一個(gè)界面(見圖1)主要包含切換驅(qū)動器、目錄及圖片縮略圖的瀏覽;第二個(gè)界面(見圖2)是圖片瀏覽界面。那么需要使用Visual Basic創(chuàng)建兩個(gè)窗體,具體設(shè)計(jì)步驟如下所示:
(1) 啟動VB創(chuàng)建一個(gè)工程,在Form窗體中加入驅(qū)動器列表框Drive1、目錄列表框Dir1、文件列表框File1、圖像框?qū)ο驣mage1,設(shè)置窗體布局。
(2) 圖像框Image1的stretch設(shè)置為Falsh;File1的filter屬性設(shè)置為“位圖文件|*.bmp|Jpeg文件|*.jpg|Icon圖標(biāo)文件|*.ico|矢量圖片文件|*.wmf|Gif圖片|*.gif”。
lt;E:\王芳\現(xiàn)代電子技術(shù)201506\現(xiàn)代電子技術(shù)15年38卷第6期\Image\04T1.tifgt;
圖1 圖片瀏覽器的主界面
(3) 單擊工程菜單,添加一個(gè)窗體Form2。
(4) 在Form2中加入一個(gè)圖像框Image1。
(5) 在界面2中要實(shí)現(xiàn)從當(dāng)前文件向前、向后瀏覽及返回界面1的功能,可以通過添加菜單或者直接用命令按鈕來實(shí)現(xiàn)均可。本例中采用比較簡便的按鈕方式來實(shí)現(xiàn)。那么在Form2中添加3個(gè)命令按鈕Command1、Command2、Command3。
(6) 設(shè)置三個(gè)命令按鈕的Caption屬性均為空,Style屬性均為1(圖形按鈕),通過Picture屬性分別引入三個(gè)圖標(biāo)文件。
lt;E:\王芳\現(xiàn)代電子技術(shù)201506\現(xiàn)代電子技術(shù)15年38卷第6期\Image\04T2.tifgt;
圖2 圖片瀏覽界面
2 "控件的編程以及調(diào)試
(1) 對Form1中各個(gè)控件進(jìn)行編程:
首先實(shí)現(xiàn)Drive1,Dir1,F(xiàn)ile1三個(gè)對象的關(guān)聯(lián),代碼如下:
Private Sub Drive1_Change()
On Error Resume Next
Dir1.Path = Drive1.Drive
End Sub
上面的代碼實(shí)現(xiàn)目錄列表框和驅(qū)動器列表框之間的關(guān)聯(lián)。
Private Sub Dir1_Change()
File1.Path = Dir1.Path
End Sub
此段代碼實(shí)現(xiàn)目錄列表框和文件列表框之間的關(guān)聯(lián)。當(dāng)在文件列表框File1單擊某圖片文件時(shí),在圖像框Image1里顯示縮略圖的代碼如下:
Private Sub File1_Click()
Image1.Picture = LoadPicture(File1.Path amp; \"\\" amp; File1.FileName)
i = File1.ListIndex
On Error Resume Next
End Sub
注意:此段代碼中的i用來記錄圖片在當(dāng)前目錄中的位置,在Form2中要使用,因此必須在窗體的通用聲明部分使用Public來定義。
當(dāng)雙擊文件列表框File1某圖片文件時(shí),要跳轉(zhuǎn)到圖片瀏覽界面,以大屏幕的方式瀏覽圖片,跳轉(zhuǎn)功能的代碼如下:
Private Sub File1_DblClick()
Me.Hide
Form2.Show
Form2.Image1.Picture = Me.Image1.Picture
End Sub
(2) 接下來對Form2中個(gè)控件進(jìn)行編程:
當(dāng)切換到Form2時(shí),為保證圖片要顯示在整個(gè)窗口的中央,可以對窗體的Activate事件進(jìn)行編程,代碼如下:
Private Sub Form_Activate()
Image1.Move (Me.ScaleWidth ? Image1.Width) / 2, (Me.ScaleHeight ? Image1.Height) / 2
End Sub
Command1要實(shí)現(xiàn)單擊返回如圖一界面,代碼如下:
Private Sub Command1_Click()
Me.Hide
Form1.Show
End Sub
Command2要實(shí)現(xiàn)單擊從當(dāng)前文件向后瀏覽其余圖片的功能,代碼如下:
Private Sub Command2_Click()
Image1.Move (Me.ScaleWidth ? Image1.Width) / 2, (Me.ScaleHeight ? Image1.Height) / 2
If i = 0 Then i = Form1.File1.ListCount ? 1 Else i = i ? 1
Image1.Picture = LoadPicture(Form1.File1.Path amp; \"\\" amp; Form1.File1.List(i))
End Sub
Command3要實(shí)現(xiàn)單擊從當(dāng)前文件向前瀏覽其余圖片的功能,代碼如下:
Private Sub Command3_Click()
Image1.Move (Me.ScaleWidth ? Image1.Width) / 2, (Me.ScaleHeight ? Image1.Height) / 2
If i = Form1.File1.ListCount ? 1 Then i = 0 Else i = i + 1
Image1.Picture = LoadPicture(Form1.File1.Path amp; \"\\" amp; Form1.File1.List(i))
End Sub
運(yùn)行期間當(dāng)窗體大小改變時(shí),圖片也要顯示在正中央,為了保證圖像顯示在整個(gè)窗體的中央,需要對窗體的Resize事件進(jìn)行編程,代碼同窗體的Activate事件相同。當(dāng)然也可以添加菜單,把一些常用的命令以菜單項(xiàng)的方式創(chuàng)建,方法比較簡單,這里不再論述。
3 "結(jié) "語
運(yùn)行程序,查看自己DIY的看圖軟件,由此就擁有了自己專屬的看圖軟件。
參考文獻(xiàn)
[1] 李振亭.Visual Basic程序設(shè)計(jì)教程[M].北京:北方交通大學(xué)出版社,2003.
[2] 楊敏.中文版Visual Basic 6.0 實(shí)用教程[M].成都:電子科技大學(xué)出版社,2001.
[3] 童鑫.高職VB語言基礎(chǔ)課“教、學(xué)、做”一體化教學(xué)模式改革初探[J].教書育人,2011(18):66?68.
[4] 劉炳文.精通Visual Basic 6.0[M].北京:電子工業(yè)出版社,2001.
[5] 張建軍,韓瑩.利用VB、Delphi輕松實(shí)現(xiàn)圖象漫游[J].電腦開發(fā)與應(yīng)用,2001,14(5):40?41.
[6] 陳先明.VB中圖形平移和縮放功能的實(shí)現(xiàn)方法[J].電腦學(xué)習(xí),1999(6):23?24.