📄 form1.frm
字号:
VERSION 5.00
Begin VB.Form Form1
Caption = "背景渐变的窗体"
ClientHeight = 3195
ClientLeft = 60
ClientTop = 345
ClientWidth = 4560
Icon = "Form1.frx":0000
LinkTopic = "Form1"
ScaleHeight = 3195
ScaleWidth = 4560
StartUpPosition = 1 '所有者中心
Begin VB.CheckBox Check2
BackColor = &H8000000A&
Caption = "从左到右"
Height = 315
Left = 2625
TabIndex = 9
Top = 2790
Width = 1065
End
Begin VB.CheckBox Check1
BackColor = &H8000000A&
Caption = "从上到下"
Height = 315
Left = 2625
TabIndex = 8
Top = 2460
Width = 1065
End
Begin VB.CommandButton Command2
Caption = "退出"
Height = 375
Left = 3735
TabIndex = 7
Top = 2565
Width = 750
End
Begin VB.Frame Frame1
Caption = "请输入颜色值"
Height = 780
Left = 45
TabIndex = 0
Top = 2340
Width = 2520
Begin VB.TextBox Text3
BackColor = &H00FF0000&
Height = 375
Left = 2040
MaxLength = 3
TabIndex = 3
Text = "0"
Top = 225
Width = 375
End
Begin VB.TextBox Text2
BackColor = &H0000FF00&
Height = 375
Left = 1305
MaxLength = 3
TabIndex = 2
Text = "0"
Top = 225
Width = 375
End
Begin VB.TextBox Text1
BackColor = &H000000FF&
ForeColor = &H80000002&
Height = 375
Left = 465
MaxLength = 3
TabIndex = 1
Text = "255"
Top = 225
Width = 375
End
Begin VB.Label Label3
Caption = "B"
Height = 390
Left = 1785
TabIndex = 6
Top = 285
Width = 375
End
Begin VB.Label Label2
Caption = "G"
Height = 390
Left = 990
TabIndex = 5
Top = 285
Width = 375
End
Begin VB.Label Label1
Caption = "R"
Height = 390
Left = 165
TabIndex = 4
Top = 285
Width = 375
End
End
End
Attribute VB_Name = "Form1"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Sub rgbleft(red, Green, Blue, aspect As Boolean) '从左到右或从右到左渐变
Dim a, i, x, y, x1, y1 As Integer
a = (Me.Width / 100) '设置渐变变化趋势
If aspect = True Then '渐变方向
x = 0 '设置从左到右渐变
Else
x = Me.Width - a '设置从右到左渐变
End If
y = 0
y1 = Me.Width
x1 = x + a
For i = 1 To 100
Me.Line (x, y)-(x1, y1), RGB(red, Green, Blue), BF ' 产生渐变
red = red - 5 '红色递减
Green = Green - 5 '绿色递减
Blue = Blue - 5 '蓝色递减
If aspect = True Then
x = x1 '设置从左到右渐变
Else
x = x - a '设置从右到左渐变
End If
If red <= 0 Then '防止变量小于0
red = 0
End If
If Green <= 0 Then '防止变量小于0
Green = 0
End If
If Blue <= 0 Then '防止变量小于0
Blue = 0
End If
x1 = x + a
Next
End Sub
Sub rgbtop(red, Green, Blue, aspect As Boolean) '从上到下或从下到上渐变
Dim a, i, x, y, y1, x1 As Integer
a = (Me.Height / 100) '设置渐变变化趋势
If aspect = True Then '渐变方向
y = 0 '设置从上到下渐变
Else
y = Me.Height - a '设置从下到上渐变
End If
x = 0
x1 = Me.Width
y1 = y
For i = 1 To 100
Me.Line (x, y)-(x1, y1), RGB(red, Green, Blue), BF ' 产生渐变
red = red - 5 '红色递减
Green = Green - 5 '绿色递减
Blue = Blue - 5 '蓝色递减
If aspect = True Then '渐变方向
y = y1 '设置从上到下渐变
Else
y = y - a '设置从下到上渐变
End If
If red <= 0 Then '防止变量小于0
red = 0
End If
If Green <= 0 Then '防止变量小于0
Green = 0
End If
If Blue <= 0 Then '防止变量小于0
Blue = 0
End If
y1 = y + a
Next
End Sub
Private Sub Check1_Click() '设置从上到下或从下到上渐变
rgbtop Text1.Text, Text2.Text, Text3.Text, Check1.Value '产生渐变
Check1.BackColor = &H8000& '为当前渐变
Check2.BackColor = &H8000000F '非当前渐变
End Sub
Private Sub Check2_Click() '设置从左到右或从右到左渐变
rgbleft Text1.Text, Text2.Text, Text3.Text, Check2.Value '产生渐变
Check2.BackColor = &H8000& '为当前渐变
Check1.BackColor = &H8000000F '非当前渐变
End Sub
Private Sub Text1_Change() '设置红色值
Text1.Text = Abs(Val(Text1.Text))
If Check1.BackColor = &H8000& Then '如果选择从上到下多选框
rgbtop Text1.Text, Text2.Text, Text3.Text, Check1.Value '渐变为从上到下或从下到上
Else
rgbleft Text1.Text, Text2.Text, Text3.Text, Check2.Value '渐变为从左到右或从右到左
End If
End Sub
Private Sub Text2_Change() '设置绿色值
Text2.Text = Abs(Val(Text2.Text))
If Check1.BackColor = &H8000& Then '如果选择从上到下多选框
rgbtop Text1.Text, Text2.Text, Text3.Text, Check1.Value '渐变为从上到下或从下到上
Else
rgbleft Text1.Text, Text2.Text, Text3.Text, Check2.Value '渐变为从左到右或从右到左
End If
End Sub
Private Sub Text3_Change() '设置蓝色值
Text3.Text = Val(Text3.Text)
If Check1.BackColor = &H8000& Then '如果选择从上到下多选框
rgbtop Text1.Text, Text2.Text, Text3.Text, Check1.Value '渐变为从上到下或从下到上
Else
rgbleft Text1.Text, Text2.Text, Text3.Text, Check2.Value '渐变为从左到右或从右到左
End If
End Sub
Private Sub Command2_Click()
Unload Me
End Sub
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -