VB.NET窗體實(shí)現(xiàn)背景花紋的方法

本篇內(nèi)容介紹了“VB.NET窗體實(shí)現(xiàn)背景花紋的方法”的有關(guān)知識(shí),在實(shí)際案例的操作過(guò)程中,不少人都會(huì)遇到這樣的困境,接下來(lái)就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!

公司主營(yíng)業(yè)務(wù):成都網(wǎng)站設(shè)計(jì)、做網(wǎng)站、移動(dòng)網(wǎng)站開(kāi)發(fā)等業(yè)務(wù)。幫助企業(yè)客戶真正實(shí)現(xiàn)互聯(lián)網(wǎng)宣傳,提高企業(yè)的競(jìng)爭(zhēng)能力。創(chuàng)新互聯(lián)是一支青春激揚(yáng)、勤奮敬業(yè)、活力青春激揚(yáng)、勤奮敬業(yè)、活力澎湃、和諧高效的團(tuán)隊(duì)。公司秉承以“開(kāi)放、自由、嚴(yán)謹(jǐn)、自律”為核心的企業(yè)文化,感謝他們對(duì)我們的高要求,感謝他們從不同領(lǐng)域給我們帶來(lái)的挑戰(zhàn),讓我們激情的團(tuán)隊(duì)有機(jī)會(huì)用頭腦與智慧不斷的給客戶帶來(lái)驚喜。創(chuàng)新互聯(lián)推出浦口免費(fèi)做網(wǎng)站回饋大家。

我們每個(gè)都希望程序給我們打來(lái)強(qiáng)大的功能,結(jié)合我的一些經(jīng)驗(yàn)和大家分析探討一下。我們?cè)陂_(kāi)發(fā)軟件過(guò)程中,為提高軟件的商品化程度,感覺(jué)到界面的美觀程度是一個(gè)軟件能否獲得成功的一個(gè)重要因素,我們仔細(xì)研究了一些成功的商品化軟件,從這些軟件上可以看到,程序窗口背景能顯示出非常美麗的、富有立體感的花紋。而采用VVB.NET窗體設(shè)計(jì),若只按照系統(tǒng)提供的功能,只能從有限的幾種顏色中選擇一種顏色或采用程序繪制一些簡(jiǎn)單的線條。而想實(shí)現(xiàn)立體感很強(qiáng)的紋理圖案,一般只能采用窗體的PICTURE屬性調(diào)用位圖文件,使用這種方法實(shí)現(xiàn)有許多缺點(diǎn) ,其一是窗體大小受位圖大小的限制,調(diào)整起來(lái)麻煩,不具有通用性和靈活性;其二是浪費(fèi)資源,因?yàn)榛y圖案基本上是重復(fù)圖案,采用與窗體同樣大小的位圖是一種浪費(fèi)。

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

該程序在Visual Basic 5.0上調(diào)試成功。

1.新建窗體Form1,屬性如下:

Caption =“背景花紋的實(shí)現(xiàn)”  Borderstyle=3(無(wú)***、最小化按鈕)

2.建網(wǎng)格控件Grid1,它的位置和大小將在程序中設(shè)置(與Form1同樣大),屬性為:

Enabled = False(焦點(diǎn)不會(huì)落在網(wǎng)格控件Grid1上)  Fillstyle=1(改變所有單元Text特性)  Fixedcols=0(無(wú)固定行)  Fixedrows=0(無(wú)固定列)  Gridlines = False(網(wǎng)格行不可見(jiàn)),  Visible = True

3.建立圖象控件Picture1,程序運(yùn)行時(shí)將背景花紋基本圖案放入其中,屬性為

Visible = False(不可見(jiàn))  Autosize = True(自動(dòng)調(diào)整大小)

4.控件中加入Sheridan 3D Controls,選取其中的三維命令按鈕SSCommand,建立兩個(gè)按鈕

SSCommand1.Caption=“退出”  SSCommand2.Caption=“更換背景”(演示不同的背景圖案)

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

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

Dim pictfile As String '位圖文件名  Dim FILEPATH As String '文件路徑  Sub Backpict(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  '所有單元大小等于基本圖案大小  For i = 0 To grid1.Cols - 1  For j = 0 To grid1.Rows - 1  grid1.ColWidth(i) = picture1.ScaleWidth * 15  grid1.RowHeight(j) = picture1.ScaleHeight * 15  Next j  Next I  '選定所有單元  grid1.SelStartCol = 0 grid1.SelStartRow = 0 grid1grid1.SelEndCol = grid1.Cols - 1  grid1grid1.SelEndRow = grid1.Rows - 1  grid1.Picture = Picture1.Picture  End Sub

6.窗體主程序

Private Sub Form_Load()  Private Sub Form_Load()  '得到運(yùn)行程序路徑名,路徑名后帶反斜杠  If Right(App.Path, 1) <> "\" Then  filePath = App.Path & "\"  Else  filePath = App.Path  End If  '窗體初始顯示由Tiles.bmp基本圖案組成的背景  pictfile = "c:\windows\Tiles.bmp" backpict (pictfile)  End Sub

7.退出程序命令按鈕

Private Sub SSCommand1_Click()  End  End Sub

8.演示不同的底紋圖案

Private Sub SSCommand2_Click()  '兩種背景圖案交替演示  If pictfile = filePath & "Pict1.bmp" Then  pictfile = "c:\windows\Tiles.bmp" Else  pictfile = filePath & "Pict1.bmp"  End If  Backpict (pictfile)  End Sub

“VB.NET窗體實(shí)現(xiàn)背景花紋的方法”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識(shí)可以關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實(shí)用文章!

當(dāng)前名稱:VB.NET窗體實(shí)現(xiàn)背景花紋的方法
本文網(wǎng)址:http://muchs.cn/article42/pdgshc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供外貿(mào)建站、網(wǎng)站內(nèi)鏈、做網(wǎng)站、搜索引擎優(yōu)化ChatGPT、商城網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

成都定制網(wǎng)站建設(shè)