一、利用ActiveX控件進行窗體的界面設計
在VB的可視化的編程環(huán)境中,用戶不必編寫大量的代碼,就可以利用VB提供的功能強大的大量控件設計出豐富的界面,這樣一來可以使程序員從繁瑣的代碼編寫任務中解脫出來,從而投入到更具有創(chuàng)造力和想象力的工作中去,設計出有個性,有特色、友好的界面。
下面是一個利用ActiveX控件來進行程序界面設計的示例,在這個示例程序中所用到的一些控件在程序的初始化階段沒有被加載,需在讀者自己把它們添加到工具箱中。
1.啟動一個新工程,向工具箱中添加ActiveX控件
啟動一個新的標準Exe工程,然后選擇菜單[工程]/[部件],在彈出的對話框中選擇選中部件對話框中的Microsoft Table Dialog Control6.0,確認后返回設計狀態(tài),就會發(fā)現(xiàn)SSTab控件已經加入到工具箱中。
2.設置SSTab控件屬性
SSTab控件的狀態(tài)可以在程序中動態(tài)的修改,比如在窗體的設計階段雙擊窗體,在窗體的Form_load()事件中添加下列代碼:
Private Sub Form_load()
SSTab1.TabCaption(1)="選項1" '設置選項1上的文本。
SSTab1.TabVisible(2)=False '設置選項2上的可見狀態(tài)為不可見。
SSTab1.TabEnabled(0)=False '設置選項0的有效狀態(tài)為無效。
SSTab1.Tab=1 '設置選項1為選中的狀態(tài)
SSTab1.Tabs=4 '添加一個選項
SSTab1.TabsPerRow = 4 '設置一行中出現(xiàn)的標簽卡數(shù)為4
End Sub
3.向窗體上添加控件
設計一個用于算術運算的應用例子,先向窗體上添加一個CommandButton控件,兩個TextBox控件,一個SSTab控件,四個ToggleButton控件、兩個UpDown控件和四個Lable控件。
在部件對話框中選中 Micrsoft Forms 2.0 Object Liberary和Micrsoft Windows Common Controls_25.0(SP2),添加ToggleButton控件和UpDown控件到工具箱。
控件說明如下:
CommandButton 控件用來結束程序的運行,為程序的正常結束提供一個出口。
TextBox控件用來顯示程序中的兩個變量X和Y的值。
UpDown控件用來實現(xiàn)變量的更新。
ToggleButton控件用來實現(xiàn)不同的加減乘除運算。
Lable控件用來顯示文本的運算結果。
SSTab控件用來顯示不同的選項,同時作為ToggleButton控件的容器。
4.添加事件響應代碼
Private Sub Command1_Click()
End
End Sub
Private Sub Form_Load()
SSTab1.TabCaption(0) = "加法"
SSTab1.TabCaption(1) = "減法"
SSTab1.TabCaption(2) = "乘法"
SSTab1.TabCaption(3) = "除法"
If Text1.Text = "" Then '在設計時,將窗體上的兩個文本框的屬性清空。
Text1.Text = "0.00000"
End If
If Text2.Text = "" Then
Text2.Text = "0.00000"
End If
End Sub
Private Sub SSTab1_Click(PreviousTab As Integer)
ToggleButton1.Enabled = True
End Sub
Private Sub Text2_Change()
If Text2.Text = 0 Then
ToggleButton4.Enabled = False '如果Text2中的數(shù)字為0,除法無效。
Else
ToggleButton4.Enabled = True
End If
End Sub
Private Sub ToggleButton4_Click()
Label4.Caption = Val(Text1.Text) / Val(Text2.Text)
End Sub
Private Sub ToggleButton3_Click()
Label4.Caption = Val(Text1.Text) * Val(Text2.Text)
End Sub
Private Sub ToggleButton2_Click()
Label4.Caption = Val(Text1.Text) - Val(Text2.Text)
End Sub
Private Sub ToggleButton1_Click()
Label4.Caption = Val(Text1.Text) + Val(Text2.Text)
End Sub
Private Sub UpDown1_DownClick()
If Text1.Text > 0 Then
Text1.Text = Val(Text1.Text) - 1
End If
End Sub
Private Sub UpDown1_UpClick()
If Text1.Text = "" Then
Text1.Text = 0
End If
Text1.Text = Val(Text1.Text) + 1
End Sub
Private Sub UpDown2_DownClick()
If Text2.Text > 0 Then
Text2.Text = Val(Text2.Text) - 1
End If
End Sub
Private Sub UpDown2_UpClick()
If Text2.Text = "" Then
Text2.Text = 0
End If
Text2.Text = Val(Text2.Text) + 1
End Sub
在VB的可視化的編程環(huán)境中,用戶不必編寫大量的代碼,就可以利用VB提供的功能強大的大量控件設計出豐富的界面,這樣一來可以使程序員從繁瑣的代碼編寫任務中解脫出來,從而投入到更具有創(chuàng)造力和想象力的工作中去,設計出有個性,有特色、友好的界面。
下面是一個利用ActiveX控件來進行程序界面設計的示例,在這個示例程序中所用到的一些控件在程序的初始化階段沒有被加載,需在讀者自己把它們添加到工具箱中。
1.啟動一個新工程,向工具箱中添加ActiveX控件
啟動一個新的標準Exe工程,然后選擇菜單[工程]/[部件],在彈出的對話框中選擇選中部件對話框中的Microsoft Table Dialog Control6.0,確認后返回設計狀態(tài),就會發(fā)現(xiàn)SSTab控件已經加入到工具箱中。
2.設置SSTab控件屬性
SSTab控件的狀態(tài)可以在程序中動態(tài)的修改,比如在窗體的設計階段雙擊窗體,在窗體的Form_load()事件中添加下列代碼:
Private Sub Form_load()
SSTab1.TabCaption(1)="選項1" '設置選項1上的文本。
SSTab1.TabVisible(2)=False '設置選項2上的可見狀態(tài)為不可見。
SSTab1.TabEnabled(0)=False '設置選項0的有效狀態(tài)為無效。
SSTab1.Tab=1 '設置選項1為選中的狀態(tài)
SSTab1.Tabs=4 '添加一個選項
SSTab1.TabsPerRow = 4 '設置一行中出現(xiàn)的標簽卡數(shù)為4
End Sub
3.向窗體上添加控件
設計一個用于算術運算的應用例子,先向窗體上添加一個CommandButton控件,兩個TextBox控件,一個SSTab控件,四個ToggleButton控件、兩個UpDown控件和四個Lable控件。
在部件對話框中選中 Micrsoft Forms 2.0 Object Liberary和Micrsoft Windows Common Controls_25.0(SP2),添加ToggleButton控件和UpDown控件到工具箱。
控件說明如下:
CommandButton 控件用來結束程序的運行,為程序的正常結束提供一個出口。
TextBox控件用來顯示程序中的兩個變量X和Y的值。
UpDown控件用來實現(xiàn)變量的更新。
ToggleButton控件用來實現(xiàn)不同的加減乘除運算。
Lable控件用來顯示文本的運算結果。
SSTab控件用來顯示不同的選項,同時作為ToggleButton控件的容器。
4.添加事件響應代碼
Private Sub Command1_Click()
End
End Sub
Private Sub Form_Load()
SSTab1.TabCaption(0) = "加法"
SSTab1.TabCaption(1) = "減法"
SSTab1.TabCaption(2) = "乘法"
SSTab1.TabCaption(3) = "除法"
If Text1.Text = "" Then '在設計時,將窗體上的兩個文本框的屬性清空。
Text1.Text = "0.00000"
End If
If Text2.Text = "" Then
Text2.Text = "0.00000"
End If
End Sub
Private Sub SSTab1_Click(PreviousTab As Integer)
ToggleButton1.Enabled = True
End Sub
Private Sub Text2_Change()
If Text2.Text = 0 Then
ToggleButton4.Enabled = False '如果Text2中的數(shù)字為0,除法無效。
Else
ToggleButton4.Enabled = True
End If
End Sub
Private Sub ToggleButton4_Click()
Label4.Caption = Val(Text1.Text) / Val(Text2.Text)
End Sub
Private Sub ToggleButton3_Click()
Label4.Caption = Val(Text1.Text) * Val(Text2.Text)
End Sub
Private Sub ToggleButton2_Click()
Label4.Caption = Val(Text1.Text) - Val(Text2.Text)
End Sub
Private Sub ToggleButton1_Click()
Label4.Caption = Val(Text1.Text) + Val(Text2.Text)
End Sub
Private Sub UpDown1_DownClick()
If Text1.Text > 0 Then
Text1.Text = Val(Text1.Text) - 1
End If
End Sub
Private Sub UpDown1_UpClick()
If Text1.Text = "" Then
Text1.Text = 0
End If
Text1.Text = Val(Text1.Text) + 1
End Sub
Private Sub UpDown2_DownClick()
If Text2.Text > 0 Then
Text2.Text = Val(Text2.Text) - 1
End If
End Sub
Private Sub UpDown2_UpClick()
If Text2.Text = "" Then
Text2.Text = 0
End If
Text2.Text = Val(Text2.Text) + 1
End Sub