1.2 對VB應用程序設計的初步認識
1.2.1 設計VB應用程序的步驟
采用VB開發(fā)應用程序,一般可分為兩大部分工作:設計用戶界面和編寫程序代碼。所謂用戶界面,是指人與計算機之間傳遞、交換信息的媒介,是用戶使用計算機的綜合操作環(huán)境。通過用戶界面,用戶向計算機系統(tǒng)提供命令、數(shù)據(jù)等輸入信息,這些信息經(jīng)過計算機處理后,又經(jīng)過用戶界面,把計算機產生的輸出信息送回給用戶。
VB應用面向對象的程序設計方法,因此先要確定對象,然后才能針對這些對象進行代碼編程。VB編程中最常用的對象是窗體(即平時所說的窗口),各種控件對象必須建立在窗體上。用戶界面設計又包括建立對象和對象屬性設置兩部分。
設計VB應用程序的大致步驟如下:
(1)建立用戶界面的對象。
(2)設置對象的屬性值。
(3)編寫程序代碼,建立事件過程。
(4)保存和運行應用程序。
為了使讀者對VB程序設計有一個初步認識,以下舉兩個簡單例子。
1.2.2 第一個簡單程序
【例1.1】 設計一個程序,在運行中當用鼠標單擊窗體時,窗體上顯示出“歡迎您來到VB世界!” 字樣。
該應用程序設計步驟如下。
1.創(chuàng)建窗體
啟動VB后,選擇“標準EXE”選項,進入VB集成開發(fā)環(huán)境。此時系統(tǒng)已經(jīng)自動創(chuàng)建了一個窗體Form1,如圖1.2所示。
對于本例,用戶界面無特殊要求,只要在系統(tǒng)默認提供的窗體上輸出若干文字,因此不必專門設計用戶界面。
2.編寫程序代碼,建立事件過程
編寫程序代碼需要在“代碼窗口”中進行。
在VB主窗口中選擇“視圖”菜單中的“代碼窗口”命令,或雙擊Form1窗體,系統(tǒng)彈出與該窗體相對應的代碼窗口,如圖1.3所示。

圖1.3 代碼窗口
這個代碼窗口有一個標題“工程1-Form1(Code)”,表示當前工程名默認為“工程1”,這與Word中默認第一個文檔為“文檔1”一樣。Form1表示窗體名,圓括號內的Code表示代碼窗口。
第二行左側是一個對象框,其下拉列表框中列出了與當前窗體相聯(lián)系的對象;第二行右側是一個過程框,其下拉列表框中列出了與當前選中的對象相關的所有事件。
在對象框中選擇對象Form,在過程框中選擇事件Click(即單擊)。當選擇了對象和事件后,在代碼窗口的編輯區(qū)中立即自動出現(xiàn)Form_Click事件過程的框架,如圖1.4所示。

圖1.4 Form_Click事件過程框架
說明:① Private意為“私有”,用來定義事件過程的類型,它表明該過程只能在本窗體中使用,應用程序中的其他窗體或模塊不能調用它;② 關鍵字Sub和End Sub用于定義一個過程;③ Form_Click表示事件過程名,它由兩部分組成:對象名和事件名;④ Form_Click后面是一對圓括號,對于復雜的過程,圓括號內還可以有參數(shù)。
在已有兩行代碼之間插入一行代碼,即
Print "歡迎您來到VB世界!"
該行代碼的作用是在窗體上輸出(即顯示)后面的文字。代碼窗口顯示如圖1.5所示。

圖1.5 程序代碼窗口
3.保存工程
本例中只涉及一個窗體Form1,因此,只需保存一個窗體文件和一個工程文件。保存文件的步驟如下:
(1)選擇“文件”菜單中的“Form1另存為”命令,系統(tǒng)彈出“文件另存為”對話框,選擇好保存位置(如“我的文檔”文件夾)后輸入文件名(如vb0101.frm),然后單擊“保存”按鈕,即可保存窗體文件。
注意:窗體名與窗體文件名不是同一概念。如本例,窗體名采用默認名Form1,而窗體文件名卻是vb0101.frm。
(2)選擇“文件”菜單中的“工程另存為”命令,系統(tǒng)彈出“工程另存為”對話框,選擇好保存位置(如“我的文檔”文件夾)后輸入文件名(如vb0101.vbp),然后單擊“保存”按鈕。
4.運行程序
單擊工具欄上的“啟動”按鈕,或選擇“運行”菜單中的“啟動”命令,即可用解釋方式運行程序。程序運行時會顯示一個空白窗體,當用戶用鼠標單擊該窗體時,就會發(fā)生單擊窗體事件,系統(tǒng)會自動執(zhí)行Form_Click事件過程,從而在窗體上輸出“歡迎您來到VB世界!”字樣,如圖1.6所示。

圖1.6 單擊窗體時的顯示信息
單擊窗體右上角的“關閉”按鈕,或單擊工具欄上的“結束”按鈕,即可結束程序的運行。
1.2.3 第二個簡單程序
【例1.2】 設計一個程序,由用戶輸入一個數(shù),計算并輸出該數(shù)的平方數(shù)。
分析:要創(chuàng)建的應用程序用戶界面如圖1.7所示。

圖1.7 例1.2的設計界面
窗體上含有6個控件:2個標簽、2個文本框和2個命令按鈕。標簽用于顯示文字;文本框用于輸入數(shù)據(jù),也可顯示數(shù)據(jù);命令按鈕用來執(zhí)行有關操作。運行程序時,用戶在“輸入數(shù)”文本框中輸入數(shù)據(jù),當單擊“計算”命令按鈕時,則計算該數(shù)的平方數(shù)并顯示在“平方數(shù)”文本框中。單擊“結束”按鈕,則結束程序的運行。
具體設計步驟如下。
1.創(chuàng)建窗體
啟動VB或選擇“文件”菜單中的“新建工程”命令,從“新建工程”對話框中選擇“標準EXE”,系統(tǒng)會默認提供一個窗體(Form1)。用戶可在此窗體上添加控件,以構建用戶界面。
2.在窗體上添加控件
設置控件的方法:在VB工具箱(如圖1.2所示)中選擇(單擊)要添加的控件的按鈕,此時鼠標指針變成“+”字形。將“+”字形指針移到窗體的適當位置,然后按下左鍵并拖動鼠標,可按所需大小放置一個控件。按照上述方法,可在窗體上添加以下控件:
(1)通過工具“Label”(圖標“A”)放置兩個標簽框(簡稱標簽)。
(2)通過工具“TextBox”(圖標abl)放置兩個文本框。
(3)通過工具“CommandButton”(圖標)放置兩個命令按鈕。
3.設置對象屬性
設置窗體上控件對象的屬性,可以在“屬性窗口”(見圖1.2)中進行。通常,屬性窗口(標題欄上顯示有“屬性-”)處于主窗口的右側中部,用戶也可以選擇“視圖”菜單中的“屬性窗口”命令來顯示屬性窗口。
設置對象屬性的方法:在窗體上選定要設置屬性的對象,此時屬性窗口中會自動顯示該對象的屬性列表框,列表框左半邊顯示所選對象的所有屬性名,右半邊顯示屬性值。找到需設置的屬性,然后對該屬性值進行設置或修改,如圖1.8所示。按照上述方法,可以設置以下對象的屬性:
(1)設置窗體Form1的Caption(標題名)屬性為“計算平方數(shù)”。
(2)設置標簽Label1的Caption屬性為“輸入數(shù)”。
(3)設置標簽Label2的Caption屬性為“平方數(shù)”。
(4)設置文本框Text1的Text(文本內容)屬性為空白。
(5)設置文本框Text2的Text屬性為空白。
(6)設置命令按鈕Command1 的Caption屬性為“計算”。
(7)設置命令按鈕Command2 的Caption屬性為“結束”。

圖1.8 在屬性窗口中設置對象的屬性
4.編寫程序代碼,建立事件過程
(1)雙擊當前窗體,或選擇“視圖”菜單中的“代碼窗口”命令,系統(tǒng)彈出如圖1.3所示的代碼窗口。
(2)按照例1.1中介紹的方法,輸入命令按鈕Command1 的單擊事件過程(Command1_Click)代碼:
Private Sub Command1_Click() Dim x As Single x=Val(Text1.Text) Text2.Text=x * x End Sub
說明:① Dim語句的作用是定義(也稱聲明)一個數(shù)據(jù)類型為Single(即單精度)的變量x;② Val(Text1.Text)的作用是將文本框Text1中的數(shù)字字符(用戶輸入的)轉換為數(shù)值;③ 語句“Text2.Text=x*x”(x的平方也可寫成x^2)的作用是計算右端的平方數(shù),然后顯示在文本框Text2中。
(3)用相同的方法,可以輸入命令按鈕Command2的單擊事件過程(Command2_Click)的代碼:
Private Sub Command2_Click() End End Sub
其中End語句的作用是結束程序的運行。此時代碼窗口顯示情況如圖1.9所示。

圖1.9 例1.2的程序代碼窗口
5.保存工程
與例1.1一樣,本例中也只涉及到一個窗體,因此只需保存一個窗體文件和一個工程文件。用例1.1的保存工程的方法,可把本例用到的窗體及工程分別以vb0102.frm及vb0102.vbp保存起來,保存位置假設為“我的文檔”文件夾。
6.運行程序

圖1.10 例1.2的運行界面
(1)單擊工具欄上的“啟動”按鈕,即可采用解釋方式來運行程序。
(2)用戶在“輸入數(shù)”文本框Text1中輸入某一個數(shù),如87。
(3)單擊“計算”按鈕,系統(tǒng)會啟動事件過程Command1_Click,即讀取“輸入數(shù)”文本框(Text1)中的輸入數(shù)(87),經(jīng)運算,把計算結果顯示在“平方數(shù)”文本框(Text2)中,如圖1.10所示。
(4)單擊“結束”按鈕,啟動事件過程Command2_Click,則執(zhí)行End語句結束程序的運行。
至此,例1.2程序設計工作全部結束。
上述兩個例子的程序比較簡單,但已經(jīng)展示了VB應用程序設計的全過程。
- 現(xiàn)代測控系統(tǒng)典型應用實例
- 輕松學Java
- Visual C# 2008開發(fā)技術實例詳解
- 大數(shù)據(jù)時代的數(shù)據(jù)挖掘
- 流處理器研究與設計
- 電腦上網(wǎng)直通車
- Python Algorithmic Trading Cookbook
- Maya 2012從入門到精通
- Spark大數(shù)據(jù)技術與應用
- 完全掌握AutoCAD 2008中文版:機械篇
- 大數(shù)據(jù)驅動的設備健康預測及維護決策優(yōu)化
- 基于Xilinx ISE的FPAG/CPLD設計與應用
- 空間站多臂機器人運動控制研究
- 人工智能:語言智能處理
- 嵌入式Linux系統(tǒng)實用開發(fā)