【例】在窗体上放一个文本框,四个组合框,如下图a所示。按以下要求设计应用程序。
a) 设计界面 b) 运行界面
图 组合框的使用
1)将用于设置文本框文字颜色的组合框(命名为:ComboTextC)的Style属性设置为2(下拉列表框),列表包括白、黑、红、绿、蓝、黄。
2)将用于设置文本框背景颜色的组合框(命名为:ComboBgC)的Style属性设置为2(下拉列表框),列表包括黑、白、红、绿、蓝、黄。
3)将用于设置文本框文字对齐方式的组合框(命名为:ComboAlign)的Style属性设置为2(下拉列表框),列表包括左、中、右。
4)将用于设置文本框字体大小的组合框(命名为:ComboFontSize)的Style属性设置为0(下拉组合框),列表包括10、12、14、16、18、20、22。
5)运行时初始界面如上图b所示。从文字颜色、背景颜色和对齐方式下拉列表中选择相应内容可以设置文本框的文字颜色、背景颜色、文字对齐方式,从字体大小下拉列表中选择相应内容可以设置文本框的字号。也可以输入自定义的字号,当输入自定义字号并按回车键(Keycode值为13)或输入字号后焦点离开该组合框后,文本框的字号变为所定义的字号;如果输入的字号非法(小于等于0、空或非数字),则保留原字体大小。
要使程序运行时如上图b所示,则应在窗体的Load事件中使各组合框选择图中所展示的项目,代码如下:
Private Sub Form_Load()
ComboTextC.ListIndex = 1 ' 使文字颜色列表中的“黑”色成为文字颜色组合框的当前选择项
ComboBgC.ListIndex = 1
ComboAlign.ListIndex = 0
ComboFontSize.ListIndex = 0
End Sub
要从文字颜色组合框中选择相应内容可以设置文本框文字颜色,则应在ComboTextC组合框的Click事件中编写如下代码:
Private Sub ComboTextC_Click()
If ComboTextC.Text = "白" Then ' 文字颜色组合框的当前选择项为“白”色
Text1.ForeColor = vbWhite
ElseIf ComboTextC.Text = "黑" Then
Text1.ForeColor = vbBlack
ElseIf ComboTextC.Text = "红" Then
Text1.ForeColor = vbRed
ElseIf ComboTextC.Text = "绿" Then
Text1.ForeColor = vbGreen
ElseIf ComboTextC.Text = "蓝" Then
Text1.ForeColor = vbBlue
ElseIf ComboTextC.Text = "黄" Then
Text1.ForeColor = vbYellow
End If
End Sub
要从背景颜色组合框中选择相应内容可以设置文本框背景颜色,则应在ComboBgC组合框的Click事件中编写如下代码:
Private Sub ComboBgC_Click()
If ComboBgC.Text = "黑" Then ' 背景颜色组合框的当前选择项为“黑”色
Text1.BackColor = vbBlack
ElseIf ComboBgC.Text = "白" Then
Text1.BackColor = vbWhite
ElseIf ComboBgC.Text = "红" Then
Text1.BackColor = vbRed
ElseIf ComboBgC.Text = "绿" Then
Text1.BackColor = vbGreen
ElseIf ComboBgC.Text = "蓝" Then
Text1.BackColor = vbBlue
ElseIf ComboBgC.Text = "黄" Then
Text1.BackColor = vbYellow
End If
End Sub
要从对齐方式组合框中选择相应内容可以设置文本框文字的对齐方式,则应在ComboAlign组合框的Click事件中编写如下代码:
Private Sub ComboAlign_Click()
If ComboAlign.Text = "左" Then
Text1.Alignment = 0
ElseIf ComboAlign.Text = "中" Then
Text1.Alignment = 2
ElseIf ComboAlign.Text = "右" Then
Text1.Alignment = 1
End If
End Sub
要从字体大小组合框中选择相应内容可以设置文本框文字的字体大小,则应在ComboFontSize组合框的Click事件中编写如下代码:
Private Sub ComboFontSize_Click()
Text1.FontSize = CInt(ComboFontSize.Text)
End Sub
要使文本框中的字体大小可从ComboFontSize组合框输入相应数字并按回车键来改变,则应在ComboFontSize组合框的KeyUp事件中编写如下代码:
Private Sub ComboFontSize_KeyUp(KeyCode As Integer, Shift As Integer)
Dim TextFontSize As Integer, IsNumber As Boolean
If KeyCode = 13 Then
If IsNumeric(ComboFontSize.Text) Then '在ComboFontSize组合框中输入的是一个字
TextFontSize = CInt(ComboFontSize.Text)
If TextFontSize > 0 Then Text1.FontSize = TextFontSize
End If
End If
End Sub
要使文本框中的字体大小可从ComboFontSize组合框输入字号后焦点离开该组合框就可改变,则应在ComboFontSize组合框的LostFocus事件中编写如下代码:
Private Sub ComboFontSize_LostFocus()
Dim TextFontSize As Integer, IsNumber As Boolean
If KeyCode = 13 Then
If IsNumeric(ComboFontSize.Text) Then '在ComboFontSize组合框中输入的是一个字
TextFontSize = CInt(ComboFontSize.Text)
If TextFontSize > 0 Then Text1.FontSize = TextFontSize
End If
End Sub