国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

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

VisualBasic窗體背景花紋的實(shí)現(xiàn)

2019-11-18 17:26:44
字體:
供稿:網(wǎng)友
我們?cè)陂_發(fā)軟件過程中,為提高軟件的商品化程度,感覺到界面的美觀程度是一個(gè)軟件能否獲得成功的一個(gè)重要因素,我們仔細(xì)研究了一些成功的商品化軟件,從這些軟件上可以看到,程序窗口背景能顯示出非常美麗的、富有立體感的花紋。而采用VisualBasic3.0或4.0進(jìn)行窗體設(shè)計(jì),若只按照系統(tǒng)提供的功能,只能從有限的幾種顏色中選擇一種顏色或采用程序繪制一些簡單的線條。而想實(shí)現(xiàn)立體感很強(qiáng)的紋理圖案,一般只能采用窗體的PICTURE屬性調(diào)用位圖文件,使用這種方法實(shí)現(xiàn)有許多缺點(diǎn),其一是窗體大小受位圖大小的限制,調(diào)整起來麻煩,不具有通用性和靈活性;其二是浪費(fèi)資源,因?yàn)榛y圖案基本上是重復(fù)圖案,采用與窗體同樣大小的位圖是一種浪費(fèi)。

下面介紹一種窗體背景花紋實(shí)現(xiàn)的方法。在窗體上建立一個(gè)網(wǎng)格控件,設(shè)定網(wǎng)格行不可見,去掉固定行和固定列,用程序?qū)崿F(xiàn)網(wǎng)格控件與窗體同樣大小,并隨窗體大小的改變而改變。然后設(shè)計(jì)一個(gè)花紋圖案,形成BMP位圖文件(本文程序使用文件Pict1.bmp),或者從其它圖象中截取一段圖案,也可以利用Windows系統(tǒng)提供的圖案(如c:windowsTiles.bmp),將其調(diào)入Picture控件。設(shè)定網(wǎng)格的每個(gè)單元與該圖案大小相同,使單元的數(shù)量正好覆蓋整個(gè)窗體背景,再將所有單元均顯示該圖案。通過子程序Backpict()實(shí)現(xiàn)以上過程,不論圖案大小、窗體大小,
程序都能自動(dòng)調(diào)整網(wǎng)格控件大小和網(wǎng)格單元大小及單元數(shù)量。該程序在VisualBasic4.0上調(diào)試成功。

1.新建窗體Form1,屬性如下:
Caption=“背景花紋的實(shí)現(xiàn)”
Borderstyle=3(無最大、最小化按鈕)

2.建網(wǎng)格控件Grid1,它的位置和大小將在程序中設(shè)置(與Form1同樣大),屬性為:
Enabled=False(焦點(diǎn)不會(huì)落在網(wǎng)格控件Grid1上)
Fillstyle=1(改變所有單元Text特性)
Fixedcols=0(無固定行)
Fixedrows=0(無固定列)
Gridlines=False(網(wǎng)格行不可見),
Visible=True

3.建立圖象控件Picture1,程序運(yùn)行時(shí)將背景花紋基本圖案放入其中,屬性為
Visible=False(不可見)
Autosize=True(自動(dòng)調(diào)整大小)

4.控件中加入Sheridan3DControls,選取其中的三維命令按鈕SSCommand,建立兩個(gè)
按鈕
SSCommand1.Caption=“退出”
SSCommand2.Caption=“更換背景”(演示不同的背景圖案)

它們的屬性Picture可調(diào)用與背景相同或不同的圖案,如果使用普通的命令按鈕控
件Command也可,只是命令按鈕無背景圖案。

5.建立背景圖案形成子程序:

DimpictfileAsString`位圖文件名
DimFILEPATHAsString`文件路徑
SubBackpict(pictfile)
picture1.ScaleMode=3
Form1.ScaleMode=3
picture1.Picture=LoadPicture(pictfile)
`網(wǎng)格控件覆蓋整個(gè)窗體背景
grid1.Top=-1
grid1.Left=-1
grid1.Width=Width
grid1.Height=Height
grid1.Cols=Int(Form1.ScaleWidth/picture1.ScaleWidth) 1
grid1.Rows=Int(Form1.ScaleHeight/picture1.ScaleHeight) 1
`所有單元大小等于基本圖案大小
ForI=0Togrid1.Cols-1
Forj=0Togrid1.Rows-1
grid1.ColWidth(I)=picture1.ScaleWidth*15
grid1.RowHeight(j)=picture1.ScaleHeight*15
Nextj
NextI
`選定所有單元
grid1.SelStartCol=0
grid1.SelStartRow=0
grid1.SelEndCol=grid1.Cols-1
grid1.SelEndRow=grid1.Rows-1
grid1.Picture=Picture1.Picture
EndSub
6.窗體主程序
EndIf
Backpict(pictfile)
EndSub->


發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 中牟县| 河曲县| 德格县| 彩票| 马鞍山市| 临洮县| 凤冈县| 苍南县| 莒南县| 伊吾县| 陈巴尔虎旗| 郸城县| 丰原市| 西平县| 光泽县| 长顺县| 平度市| 榆中县| 平南县| 湘潭市| 都昌县| 闽侯县| 开封县| 泰顺县| 镇江市| 东丰县| 香港 | 临沂市| 黄陵县| 双峰县| 顺平县| 苏尼特右旗| 四川省| 福安市| 东山县| 普安县| 甘孜县| 平陆县| 金沙县| 南城县| 扎兰屯市|