官术网_书友最值得收藏!

2.2 一個簡單的加法器程序

【例2-1】設計一個簡單的加法器。

我們以上述分析的加法器為例,給出 VB 程序。這里不考慮可能產生的輸入錯誤和運算錯誤。

1.加法器界面設計

圖2.1給出了加法器的程序界面,使用了5個標簽控件(Label)來標注界面上的加數、和數、加號和等號,界面直觀。三個文本框控件(TextBox)存放兩個加數及和數。兩個命令按鈕(Button)控件實現“計算”、“退出”操作。表2.1給出了其所有對象的屬性設置。

圖2.1 簡單加法器的界面

表2.1 示例加法器對象的屬性設置

我們先使用與本題有關的“控件”。只要按照表2.1中所示的各控件屬性進行設置,或使用默認值,調整好窗體的尺寸和控件在窗體中的尺寸與位置,就完成了我們所要求的圖2.1所示的界面設計。

2.編寫程序代碼

這里我們假設程序運行是按照以下順序進行的。

? 程序啟動后,顯示“簡單加法器”界面。

? 在“加數1”下的文本框中輸入第1個數。

? 在“加數2”下的文本框中輸入第2個數。

? 單擊“計算”,將相加的結果在“和數”下的文本框中輸出。可重復?~?,進行反復計算。

? 單擊“退出”,結束加法器程序的運行。

本例完成以上操作的程序代碼,是通過“按鈕(Button)”的單擊事件而觸發的,也就是單擊“計算”或“退出”按鈕時,進入相應的程序代碼完成上述操作任務。

程序設計時,雙擊窗體上的按鈕控件,或者在按鈕控件上使用快捷菜單,選擇“查看代碼”,IDE自動打開代碼編輯界面,進入對應按鈕的事件過程,如圖2.2所示。

圖2.2 代碼編輯器選項卡

① 類名框:列出這個模塊中已添加的對象名稱,當為某個對象編寫程序代碼時,這個框中顯示其名稱(Name)。圖2.2是指示選擇“計算”按鈕(名稱為Button1)。

②方法名稱框:給出類名框中顯示對象的所有事件或方法的過程名稱。圖2.2列出的Click,就是當鼠標單擊“計算”按鈕時將執行的過程,叫Click事件過程。

③方法分隔線:如果有多個方法(過程),自動使用方法分界線隔開。在圖2.2中,分隔線下方為“退出”按鈕(Button2)的Click方法。

④ 光標位置:與一般的文本編輯器相同,光標位置是程序代碼編輯的位置。

在VB的Windows窗體應用程序中,一個窗體也是一個類,所以程序代碼的格式為:

        Public Class 窗體名
          程序代碼
        End Class

本書后面在列出程序代碼時,不再寫出“Public Class 窗體名”和“End Class”。

例2-1的“計算”和“結束”命令按鈕Click事件的程序代碼如下所示。

        Private Sub Button1_Click(ByVal sender As Object,ByVal e As System.EventArgs)Handles Button1.Click
          TextBox3.Text=Val(TextBox1.Text)+Val(TextBox2.Text)          '實現加法
        End Sub
        Private Sub Button2_Click(ByVal sender As Object,ByVal e As System.EventArgs)Handles Button2.Click
          End                                     '終止程序執行
        End Sub

我們在程序代碼后面使用英文單引號“'”后跟文字表示注釋(請參見3.3節)。

由于Button1_Click中參數過長,不方便在一行中書寫,為此參數:

        ByVal sender As Object,ByVal e As System.EventArgs

我們將省略,用……來表示,即使用:

        Private Sub Button1_Click(……)Handles Button1.Click
          程序代碼
        End Sub

3.程序代碼的簡單說明

例2-1程序由命令按鈕“計算”和“退出”兩個代碼段組成,它們分別代表兩個按鈕被單擊的處理過程。

單擊“計算”按鈕后,執行Button1_Click()過程。如表2.1所示,“計算”按鈕的“(Name)”屬性使用了默認值Button1,系統給這個過程命名為Sub Button1_Click()。其中,Sub取自Subroutine (或Sub-procedure),表示是一個子過程。

Button1_Click()過程中只有一條語句:

        TextBox3.Text=Val(TextBox1.Text)+Val(TextBox2.Text)

其含義是把輸入加數1的文本框TextBox1中的內容加上加數2的文本框TextBox2中的內容,結果存放到TextBox3中。因為輸入的是文本(即字符型),所以使用Val()函數(求值,Value)轉換為數值型。

VB使用End Sub表示一個子過程的結束。Private表示過程是“私有”的。

“退出”按鈕被單擊后,執行 Button2_Click()中的代碼,這個過程只有一條 End 語句,用來結束整個程序的運行。

4.執行程序

單擊IDE工具欄上的“啟動調試”按鈕,或在“調試”菜單中選擇“啟動調試”命令,程序被執行,運行界面(窗口)如圖2.3所示。可以重新輸入加數1和加數2,單擊“計算”,再次執行加法計算。單擊“退出”,程序結束,窗口消失。

圖2.3 運行加法器

注意,一個良好的編程習慣從命名開始。通常有一些命名的參考規則:

①控件和窗體的名稱使用英文助記符,可以重新命名。

② 命名最好能夠與對象類型一致,便于在程序中辨認,當然可以使用默認命名。

③ 一般對命名中的首字母采用大寫。

主站蜘蛛池模板: 遂川县| 五大连池市| 肃宁县| 雷州市| 读书| 莱西市| 旬邑县| 奉化市| 平和县| 兴业县| 弥渡县| 建阳市| 辉县市| 长顺县| 伊吾县| 永嘉县| 灯塔市| 甘南县| 哈尔滨市| 锡林郭勒盟| 汝城县| 锡林郭勒盟| 玉田县| 天镇县| 上林县| 吉安市| 安新县| 旬邑县| 永泰县| 南丰县| 额尔古纳市| 克拉玛依市| 边坝县| 兖州市| 左权县| 嘉禾县| 阿克苏市| 水城县| 紫阳县| 曲阳县| 巴彦县|