⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 35.txt

📁 VB文章集(含API、窗口、数据库、多媒体、系统、文件、等等)
💻 TXT
字号:
 Visual Basic窗体背景花纹的实现   
 

下面介绍一种窗体背景花纹实现的方法。在窗体上建立一个网格控件,设定网格行不可见,去掉固定行和固定列,用程序实现网格控件与窗体同样大小,并随窗体大小的改变而改变。然后设计一个花纹图案,形成BMP位图文件(本文程序使用文件Pict1.bmp),或者从其它图象中截取一段图案,也可以利用Windows系统提供的图案(如c:\windows\Tiles.bmp),将其调入Picture控件。设定网格的每个单元与该图案大小相同,使单元的数量正好覆盖整个窗体背景,再将所有单元均显示该图案。通过子程序Backpict()实现以上过程,不论图案大小、窗体大小,程序都能自动调整网格控件大小和网格单元大小及单元数量。该程序在Visual Basic 4.0上调试成功。

 

1.新建窗体Form1,属性如下:

Caption =“背景花纹的实现”

Borderstyle=3(无最大、最小化按钮)

 

2.建网格控件Grid1,它的位置和大小将在程序中设置(与Form1同样大),属性为:

Enabled = False(焦点不会落在网格控件Grid1上)

Fillstyle=1(改变所有单元Text特性)

Fixedcols=0(无固定行)

Fixedrows=0(无固定列)

Gridlines = False(网格行不可见),

Visible = True

 

3.建立图象控件Picture1,程序运行时将背景花纹基本图案放入其中,属性为

Visible = False(不可见)

Autosize = True(自动调整大小)

 

4.控件中加入Sheridan 3D Controls,选取其中的三维命令按钮SSCommand,建立两个按钮

SSCommand1.Caption=“退出”

SSCommand2.Caption=“更换背景”(演示不同的背景图案)

 

它们的属性Picture可调用与背景相同或不同的图案,如果使用普通的命令按钮控件Command也可,只是命令按钮无背景图案。

 

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

 

Dim pictfile As String '位图文件名

Dim FILEPATH As String '文件路径

Sub Backpict(pictfile)

picture1.ScaleMode = 3

Form1.ScaleMode = 3

picture1.Picture = LoadPicture(pictfile)

'网格控件覆盖整个窗体背景

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

grid1.SelEndCol = grid1.Cols - 1

grid1.SelEndRow = grid1.Rows - 1

grid1.Picture = Picture1.Picture

End Sub

 

6.窗体主程序

 

Private Sub Form_Load()

Private Sub Form_Load()

'得到运行程序路径名,路径名后带反斜杠

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

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -