用VFP6.0編寫圖片瀏覽器
發(fā)表時間:2023-07-27 來源:明輝站整理相關(guān)軟件相關(guān)文章人氣:
[摘要]昨天好友拿來了一張盤,上面有很多漂亮的圖片(由于前一陣那不爭氣的Win 98又崩潰了,只好重裝了系統(tǒng),所以沒有看圖軟件和相應(yīng)的安裝盤),但一張一張地看實在太麻煩了,于是自己用Visual FoxPr...
昨天好友拿來了一張盤,上面有很多漂亮的圖片(由于前一陣那不爭氣的Win 98又崩潰了,只好重裝了系統(tǒng),所以沒有看圖軟件和相應(yīng)的安裝盤),但一張一張地看實在太麻煩了,于是自己用Visual FoxPro 6.0編寫了個圖片瀏覽器。使用后感覺還不錯,不敢獨(dú)享,拿出來與大家分享。
設(shè)置各控件屬性
(1)設(shè)置Form的Caption屬性為“自制瀏覽器”。BorderStyle的屬性設(shè)為2,禁止調(diào)整表單。設(shè)MaxButton的屬性為.F.,使表單不能最大化。
(2)設(shè)置List的IntegralHeigh屬性設(shè)為.T.,使List能自動重新調(diào)整,以顯示所有的文本部分。設(shè)MultiSelect為.T.,能夠使用戶對文件進(jìn)行多重選項。設(shè)RowSource為*.bmp,指定列表框中數(shù)據(jù)初始值的源為BMP文件。設(shè)RowSourceType的值為7,指定List的數(shù)據(jù)源為文件。
(3)設(shè)置Label1的Caption屬性為“文件類型:”。將Fontsize設(shè)為15。
(4)設(shè)置Combo1的RowSource屬性為“*.bmp,*.cur,*.icq,*.jpg",表示它所支持的圖像文件類型。將RowSourceType設(shè)為1,設(shè)數(shù)據(jù)源為值。Style的值為2,使用戶只能從下拉框中選擇文件類型。使其Value為*.bmp,初始文件類型為BMP文件。
(5)設(shè)置Container的SpecialEffect值為0,以便鑲在里面的圖像有立體感。
(6)設(shè)置Image的Stretch為1,使任何大小的圖片都能以相同的比例顯示。
注:Image是鑲嵌在Container中的。
(7)設(shè)置Shape的BackColor的值為64,0,64。
注:Shape是放在Image上面的。
(8)設(shè)置兩個Command的Caption分別為“清屏”和“退出”。
添加代碼
(1)FORM的代碼
PROCEDURE Form.Init
c=Home()&&把當(dāng)前VFP目錄的默認(rèn)值給變量c
If File(c+″\NUL″) &&以當(dāng)前VFP目錄為起始
CD (c) ` 。ΓM(jìn)入此目錄
This.List1.Requery &&保持List的內(nèi)容不斷刷新
EndIf
(2)LIST的代碼
PROCEDURE List.InteractiveChange
s=Upper(This.List(This.ListIndex))
&&記錄改變后的目錄中的文件
CD This.List(2)
IF″.BMP″$S.OR.″.ICO″$S.OR.
″.JPG″$S.OR.″.CUR″$S
ThisForm.Image1.Picture=This.List(2)+s
&&如果文件包含這四個擴(kuò)展名,則顯示。
ThisForm.Shape1.Visible=.F.
EndIf
(3)Combo1的代碼
PROCEDURE Combo1.Init
This.ListIndex=1 &&選定數(shù)據(jù)項的索引
PROCEDURE Combo1.InteractiveChange
ThisForm.List1.RowSource=This.Value
&&指定List所顯示的文件類型為當(dāng)
前Combo1的Value中的類型
ThisForm.List1.Requery
&&使List的內(nèi)容不斷更新
(4)Command1的代碼
PROCEDURE Command1.Click
ThisForm.Image1.Picture=′ ′
&&取消圖片路徑,實現(xiàn)清屏
ThisForm.Shape1.Visible=.T.
(5)Command2的代碼
PROCEDURE Ccommand2.Click
Rele ThisForm &&釋放表單
到此,這個瀏覽器就算完成了,希望它能給初學(xué)者一些啟發(fā)。