教學(xué)課件·《Visual_第1頁
教學(xué)課件·《Visual_第2頁
教學(xué)課件·《Visual_第3頁
教學(xué)課件·《Visual_第4頁
教學(xué)課件·《Visual_第5頁
已閱讀5頁,還剩245頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、2022/7/20什么是Visual Basic Visual Basic 可視化程序設(shè)計(jì)的開發(fā)環(huán)境。程序設(shè)計(jì) 使用程序設(shè)計(jì)語言完成軟件開發(fā)任務(wù)程序設(shè)計(jì)語言是人與計(jì)算機(jī)交流的工具,是由字、詞和語法規(guī)則構(gòu)成的指令系統(tǒng)。2022/7/20程序設(shè)計(jì)語言程序設(shè)計(jì)語言 分類機(jī)器執(zhí)行角度應(yīng)用角度機(jī)器語言高級(jí)語言系統(tǒng)軟件科學(xué)計(jì)算數(shù)據(jù)庫管理圖形設(shè)計(jì)人工智能匯編語言2022/7/20程序設(shè)計(jì)(1)數(shù)據(jù)描述把被處理的信息描述成計(jì)算機(jī)可以接受的數(shù)據(jù)形式。(2)對(duì)數(shù)據(jù)的處理是指對(duì)數(shù)據(jù)進(jìn)行輸入、輸出、計(jì)算、存儲(chǔ)等一系列的活動(dòng)。程序設(shè)計(jì)任務(wù)主要完成兩方面工作:2022/7/20程序設(shè)計(jì)數(shù)據(jù)處理的目的是為了提取有用的數(shù)據(jù)成

2、分,獲得我們有用的資料。程序設(shè)計(jì)的工作成果稱為源程序。 高級(jí)語言源程序有兩種執(zhí)行方式:編譯執(zhí)行解釋執(zhí)行2022/7/20VB 6.0的特點(diǎn) VB6.0是目前最容易學(xué)習(xí)的面向?qū)ο蟮某绦蛟O(shè)計(jì)語言。VB6.0有非常完善的幫助系統(tǒng)。 VB6.0采用了面向?qū)ο蟮某绦蛟O(shè)計(jì)方法 。VB6.0采用了事件驅(qū)動(dòng)機(jī)制 。針對(duì)VB6.0的對(duì)象提供了豐富的方法 。VB6.0有豐富的數(shù)據(jù)類型和函數(shù)采用結(jié)構(gòu)化編程語言 。VB6.0提供了功能強(qiáng)大的Active控件和對(duì)象 。VB6.0是有力的Internet開發(fā)工具 。VB6.0有先進(jìn)的數(shù)據(jù)技 。2022/7/20 例1.1第一個(gè)VB程序。設(shè)計(jì)一個(gè)窗體,在窗體上添加3個(gè)命令按

3、鈕。運(yùn)行程序時(shí),單擊“顯示”,在窗體上顯示“你單擊了“顯示”按鈕”。若單擊“變大”或“變小”按鈕,使窗體尺寸增加或減少,增加或減少的尺寸都為50Twip。 2022/7/20VB 6.0集成開發(fā)環(huán)境 2022/7/20標(biāo)題欄 l 設(shè)計(jì)狀態(tài):允許程序員設(shè)計(jì)應(yīng)用程序用戶界面和編寫代碼。l 運(yùn)行狀態(tài):表示正在運(yùn)行程序,此時(shí)不能設(shè)計(jì)應(yīng)用程序用戶界面和編寫代碼。l 中斷狀態(tài):運(yùn)行的程序暫時(shí)停下來,還可以繼續(xù)運(yùn)行程序,此時(shí)不能設(shè)計(jì)應(yīng)用程序用戶界面,但可以編寫代碼。2022/7/20菜單欄 位于標(biāo)題欄的下方,菜單欄中顯示“文件”、“編輯”、“視圖”、“工程”等13個(gè)菜單項(xiàng),每個(gè)菜單項(xiàng)都有一個(gè)下拉菜單,在下拉

4、菜單中列出的各種執(zhí)行命令。 2022/7/20工具欄 位于菜單欄的下方,工具欄中提供了部分用圖標(biāo)表示的最常用菜單命令,當(dāng)鼠標(biāo)指針指向某個(gè)圖標(biāo),將顯示該圖標(biāo)功能的簡(jiǎn)要提示信息,單擊圖標(biāo)即可執(zhí)行相應(yīng)命令。 2022/7/20工具箱 位于窗體窗口的左側(cè)有一個(gè)標(biāo)準(zhǔn)控件工具箱。每個(gè)控件用一個(gè)圖標(biāo)表示。利用這些工具可以在窗體上設(shè)計(jì)各種控件。 2022/7/20窗體窗口 位于集成開發(fā)環(huán)境工作區(qū)的中間,窗體是程序員是設(shè)計(jì)圖形用戶界面的工作臺(tái),各類控件對(duì)象必須建立在窗體上,用它創(chuàng)建應(yīng)用程序的外觀,運(yùn)行程序時(shí)窗體稱為窗口。 2022/7/20代碼窗口 位于集成開發(fā)環(huán)境工作區(qū)的中間,用它可編輯程序代碼。 2022/

5、7/20工程資源窗口 位于窗體窗口的右上部,它以樹狀顯示當(dāng)前工程包含的所有文件。VB把一個(gè)應(yīng)用程序稱為一個(gè)工程。一個(gè)工程至少包含一個(gè)工程文件(.Vbp)和一個(gè)窗體文件(.Frm)。l “查看代碼”按鈕:用于顯示或編輯代碼。l “查看對(duì)象”按鈕:用于顯示或編輯正在設(shè)計(jì)的窗體。l “切換文件夾”按鈕:用于切換工程清單的顯示方式。2022/7/20屬性窗口 2022/7/20窗體布局窗口 窗體布局窗口可調(diào)整程序運(yùn)行時(shí)窗體顯示的位置。 2022/7/20控件的畫法 l 單擊工具箱中的控件按鈕,在窗體編輯區(qū)拖動(dòng)鼠標(biāo)畫出對(duì)應(yīng)的控件。l 雙擊工具箱中的控件按鈕,即可自動(dòng)在窗體中央畫出對(duì)應(yīng)的控件,再拖動(dòng)到適當(dāng)

6、位置。按住Ctrl鍵,單擊工具箱中的控件按鈕,松開Ctrl鍵,在窗體編輯區(qū)拖動(dòng)鼠標(biāo)可畫出多個(gè)對(duì)應(yīng)的控件。畫完之后單擊工具箱中的其他控件。 2022/7/20建立VB應(yīng)用程序的一般方法 創(chuàng)建一個(gè)工程為窗體添加對(duì)象設(shè)置對(duì)象屬性編寫代碼 運(yùn)行工程 調(diào)試工程 保存工程 2022/7/20可視化程序設(shè)計(jì)的概念 對(duì)象(Object) 對(duì)象的屬性(Properties) 對(duì)象事件(Event) 事件過程 方法 2022/7/20綜合運(yùn)用 例1.2可移動(dòng)的文字。 例1.3顯示系統(tǒng)當(dāng)前時(shí)間。 2022/7/20VB的基本數(shù)據(jù)類型 “數(shù)據(jù)”是信息在計(jì)算機(jī)內(nèi)的表現(xiàn)形式,也是程序的處理對(duì)象。 不同類型的數(shù)據(jù)有不同的操

7、作方式和不同的取值范圍。 VB具有系統(tǒng)定義的基本數(shù)據(jù)類型,而且允許用戶根據(jù)需要定義自己的數(shù)據(jù)類型。 VB提供的基本數(shù)據(jù)類型主要有: 字符串型、數(shù)值型、邏輯型和日期型。2022/7/20例2.1 AB 與 A * B。設(shè)計(jì)一個(gè)窗體,在窗體上添加一個(gè)命令按鈕。運(yùn)行程序時(shí),單擊“開始”,程序?qū)⒁筝斎階和B,并在窗體顯示計(jì)算結(jié)果。(結(jié)果為什么存在問題) 2022/7/20字符串型 字符串(String)是一個(gè)字符序列,由放在一對(duì)雙引號(hào)中的ASCII字符(除雙引號(hào)和回車符之外)、漢字及其它可打印字符組成。例如:以下是合法的VB字符串,“Hello”“We are students.”“中華人民共和國(guó)”

8、“2+3=?”“2000”“ # ”“ ¥25,000.00 ”“” (空字符串)2022/7/20字符串型值得注意的是:字符串中包含的字符個(gè)數(shù)稱為字符串長(zhǎng)度。在VB6.0中,把漢字作為一個(gè)字符處理。字符串分為變長(zhǎng)字符串和定長(zhǎng)字符串。長(zhǎng)度為0(即不含任何字符的字符串)稱為空字符串。雙引號(hào)在程序代碼中起字符串的界定作用。在字符串中,字母的大小寫是有區(qū)別的。例如,字符串“ABC”與“abc”是兩個(gè)不相等的字符串。2022/7/20數(shù)值型VB的數(shù)值型數(shù)據(jù)分為整型數(shù)和實(shí)型數(shù)兩大類。2022/7/20整型 整型數(shù)是不帶小數(shù)點(diǎn)和指數(shù)符號(hào)的數(shù)。十進(jìn)制整型數(shù)由 09 的數(shù)字序列組成,可以帶正號(hào)或負(fù)號(hào)。例如:1

9、47589565, -3145, 327009 等都是十進(jìn)制整數(shù)。2022/7/20整型 整型數(shù)按示數(shù)范圍的不同分為整數(shù)、長(zhǎng)整數(shù)和字節(jié)型整數(shù)。 整型數(shù)和長(zhǎng)整數(shù)還可以有三種表示形式,即十進(jìn)制、八進(jìn)制和十六進(jìn)制。2022/7/20整型2022/7/20實(shí)型 實(shí)型數(shù)是帶有小數(shù)部分的數(shù),分為浮點(diǎn)數(shù)和定點(diǎn)數(shù)。 浮點(diǎn)數(shù)由三部分組成:符號(hào)、指數(shù)及尾數(shù)。2022/7/20邏輯型邏輯型數(shù)據(jù)(Boolean)以 2個(gè)字節(jié)(16 位)存儲(chǔ)。邏輯值邏輯真邏輯假True(-1)False(0)2022/7/20日期型 日期型(Date)數(shù)據(jù)存儲(chǔ)為 8 個(gè)字節(jié)(64 位)浮點(diǎn)數(shù)值形式。 可以表示的日期范圍從 100 年

10、1 月 1 日到 9999 年 12 月 31 日,時(shí)間可以從 0:00:00 到23:59:59。2022/7/20VB常量與變量 內(nèi)部常量 用戶自定義常量根據(jù)VB數(shù)據(jù)類型,一般常量有整型常量、長(zhǎng)整型常量、單精度型常量、雙精度型常量、字節(jié)型常量、字符串型常量、邏輯型常量和日期型常量。用戶自定義常量分一般常量和符號(hào)常量?jī)煞N形式。 2022/7/20Const語句的一般格式:Const 常量名 As 類型名=表達(dá)式 下面是正確的符號(hào)常量定義語句。Const pi=3.14159 定義pi是單精度符號(hào)常量,其值為3.14159Const max As Integer=70 定義max是整型符號(hào)常量

11、,其值為702022/7/20變量在程序中,其值可以改變的稱為變量。變量名是變量的標(biāo)識(shí)。變量名的命名規(guī)則同常量名。變量具有名稱、類型和值三個(gè)屬性。VB有兩種類型變量:屬性變量和一般變量。 一般變量是由用戶自己定義的。定義變量常用Dim語句,格式如下:Dim 變量名1 AS 類型1 , 變量名2 As 類型2 例如:Dim chr1 As String2022/7/20算術(shù)運(yùn)算符和算術(shù)表達(dá)式在VB中,算術(shù)運(yùn)算符有:乘方號(hào)()、取負(fù)號(hào)(-)、乘號(hào)(*)、除號(hào)(/)、整除號(hào)()、求余運(yùn)算符(Mod)、加號(hào)(+)和減號(hào)(-)。 Private Sub Command1_Click() Print 25

12、 5 * 5End Sub輸出結(jié)果為1。因?yàn)橄扔?jì)算乘法,再完成整除2525的運(yùn)算。 2022/7/20字符串運(yùn)算符和字符串表達(dá)式在VB中,字符串運(yùn)算符有:加號(hào)(+)和字符串連接運(yùn)算符號(hào)(&)。兩個(gè)運(yùn)算符的作用相同,都是將兩個(gè)字符串連接成一個(gè)字符串。例如:“面向?qū)ο蟆?& “程序設(shè)計(jì)” 結(jié)果仍是一個(gè)字符串:面向?qū)ο蟪绦蛟O(shè)計(jì) “面向?qū)ο蟆?+ “程序設(shè)計(jì)” 結(jié)果仍是一個(gè)字符串:面向?qū)ο蟪绦蛟O(shè)計(jì) 2022/7/20關(guān)系運(yùn)算符和關(guān)系表達(dá)式在VB中,關(guān)系運(yùn)算符有:大于號(hào)()、小于號(hào)(=)、小于等于號(hào)(=)、等于號(hào)(=)和不等于號(hào)(或)。 關(guān)系表達(dá)式的一般格式:表達(dá)式 關(guān)系運(yùn)算符 表達(dá)式 2022/7/2

13、0邏輯運(yùn)算符和邏輯表達(dá)式在VB中,常用的邏輯運(yùn)算符有:非(Not)、與(And)、或(Or)、異或(Xor)、等價(jià)(Eqv)和蘊(yùn)含(Imp)。邏輯運(yùn)算符,用來對(duì)兩個(gè)邏輯量進(jìn)行運(yùn)算,運(yùn)算的結(jié)果是邏輯型的,結(jié)果值True表示真,F(xiàn)alse表示假。邏輯表達(dá)式的一般格式:表達(dá)式 邏輯運(yùn)算符 表達(dá)式例如:A + B = C And X = Y是邏輯表達(dá)式,在求解該表達(dá)式時(shí),先完成算數(shù)運(yùn)算,再解決關(guān)系運(yùn)算,最后進(jìn)行邏輯運(yùn)算。整個(gè)表達(dá)式的含義是,當(dāng)A + B等于C并且X等于Y時(shí),該表達(dá)式的結(jié)果為真。 2022/7/20VB常用內(nèi)部函數(shù) 例2.2 飛機(jī)高度。設(shè)計(jì)一個(gè)窗體,在窗體上添加一個(gè)名為“計(jì)算”的命令按鈕

14、。運(yùn)行程序時(shí),單擊“計(jì)算”輸出雷達(dá)搜索到飛機(jī)的高度。設(shè)雷達(dá)在仰角300時(shí)發(fā)出電波,在B點(diǎn)碰到飛機(jī),經(jīng)過1/3000秒收到來自飛機(jī)的回波。電波的速度為3108米/秒,問飛機(jī)的高度。 2022/7/20常用數(shù)學(xué)函數(shù)常用數(shù)學(xué)函數(shù)主要包括三角函數(shù)、指數(shù)函數(shù)、對(duì)數(shù)函數(shù)、平方根函數(shù)、絕對(duì)值函數(shù)等,它們與數(shù)學(xué)上的定義一致。注意: 所有數(shù)學(xué)函數(shù)的自變量是數(shù)值型,計(jì)算結(jié)果也是數(shù)值型。 自變量可以是常數(shù)、變量或表達(dá)式,還可以是函數(shù)。 表中的三角函數(shù)自變量的單位為弧度。 Sgn(n)函數(shù),當(dāng)n 0返回1。Rnd(n)函數(shù)產(chǎn)生一個(gè)01之間的隨機(jī)雙精度數(shù),包括0,但并不包括1。 2022/7/20常用轉(zhuǎn)換函數(shù)常用轉(zhuǎn)換函

15、數(shù)主要包括數(shù)值型數(shù)據(jù)與字符型數(shù)據(jù)之間的轉(zhuǎn)換,以及數(shù)值型數(shù)據(jù)之間的轉(zhuǎn)換。 常用Val函數(shù)把輸入的數(shù)字字符串轉(zhuǎn)換成數(shù)值,用Str函數(shù)把要輸出的數(shù)值轉(zhuǎn)換成字符串。運(yùn)行下面程序,和例2.2結(jié)果相同。Option ExplicitPrivate Sub Command1_Click() Const Vg = 300000000# Const Pi = 3.1415 Dim OB, AB OB = Vg / 3000 / 2 AB = OB * Sin(30 * Pi / 180) Print 飛機(jī)的高度是: + Str(AB) + 米End Sub2022/7/20 Asc和Chr是一對(duì)互逆函數(shù),Chr

16、只能計(jì)算一個(gè)字符串首字符的ASCII編碼,控制字符可以使用Chr函數(shù)輸入。運(yùn)行下面程序,觀察結(jié)果(見圖2.6轉(zhuǎn)換函數(shù))。Private Sub Command1_Click() Print Chr(Asc(A), Chr(Asc(ABC) Print Asc(A), Asc(ABC) Print Trim(Asc(A), Trim(Asc(ABC) Print 顯示在上一行 + Chr(13) + Chr(10) + 顯示在下一行End Sub2022/7/20常用字符串函數(shù)VB 6.0在字符存儲(chǔ)和處理中,采用了Unicode編碼。Unicode編碼將一個(gè)漢字和一個(gè)西文字符都視為一個(gè)字符,占用

17、兩個(gè)字節(jié)存儲(chǔ)。 Private Sub Command1_Click() str1 = 字符串函數(shù)與運(yùn)算 str2 = Mid(str1, 4, 2) Print str2 N = InStr(str1, str2) Print N, InStr(str1, 字符子串) Print str1 + 的長(zhǎng)度是 + Str(Len(str1) Print LCase(abCDef) + Space(3) + UCase(abCDef) Print String(10, ) Print 茶好吃, StrReverse(茶好吃)End Sub2022/7/20InputBox函數(shù)InputBox函數(shù)的返

18、回一個(gè)字符串。在調(diào)用InputBox函數(shù)時(shí),系統(tǒng)將彈出一個(gè)對(duì)話框,該對(duì)話框能接收用戶輸入數(shù)據(jù)。InputBox函數(shù)一般格式如下: InputBox(提示信息,標(biāo)題,確省值)Private Sub Command1_Click() Dim L L = Val(InputBox(長(zhǎng)度(厘米), 輸入) Print 長(zhǎng)度(厘米):; L Print 長(zhǎng)度(Twip):; 567 * LEnd Sub2022/7/20窗體 窗體是程序員的“工作臺(tái)”,用以可視化地建立應(yīng)用程序。 窗體是 VB 中一個(gè)重要的對(duì)象,它除了具有自己的屬性、方法外,還可放置除了窗體之外的其它控件。 VB 的窗體和控件是具有自己的

19、屬性、方法和事件的對(duì)象。屬性就是對(duì)象的性質(zhì),方法就是對(duì)象的動(dòng)作,事件就是對(duì)象的響應(yīng)。2022/7/20窗體屬性 窗體的屬性:決定了窗體的外觀和操作。 設(shè)置方法: 通過屬性窗口設(shè)置和通過程序代碼設(shè)置。2022/7/20窗體主要屬性Name(名稱)標(biāo)識(shí)符,是程序代碼中使用的對(duì)象名。Caption(標(biāo)題)字符型,設(shè)定或返回窗體標(biāo)題欄中顯示的文本。BackColor(背景顏色)返回或設(shè)置背景顏色。ForeColor(前景顏色)返回或設(shè)定前景顏色。Height、Width(高、寬)數(shù)值型,返回或指定窗體的高度和寬度。Left、Top(左邊、頂邊位置)數(shù)值型,返回或確定窗體左上角的位置。2022/7/20

20、用不同的字體、字型和字號(hào)時(shí)在窗體顯示“航空英雄楊立偉”。例2.4航空英雄楊立偉。設(shè)計(jì)一個(gè)窗體,窗體的標(biāo)題為“航空英雄楊立偉”,并為窗體加載一幅圖片。運(yùn)行程序時(shí),單擊窗體,用不同的字體、字型和字號(hào)時(shí)在窗體顯示“航空英雄楊立偉”。 2022/7/20窗體事件 Microsoft Windows 操作系統(tǒng)連續(xù)地監(jiān)視每一個(gè)窗口的活動(dòng)或事件的信號(hào)。 事件可通過單擊鼠標(biāo)或按下按鍵等操作產(chǎn)生,也可通過程序控制產(chǎn)生,還可由另一個(gè)窗口的操作產(chǎn)生。2022/7/20窗體主要事件Click 事件用鼠標(biāo)單擊某個(gè)對(duì)象就觸發(fā)了 Click 事件,調(diào)用相應(yīng)的事件過程。DblClick 事件用鼠標(biāo)雙擊某個(gè)對(duì)象就觸發(fā)了 Dbl

21、Click 事件,調(diào)用相應(yīng)的事件過程。Load 事件Load 是把窗體裝入內(nèi)存工作區(qū)時(shí)發(fā)生的事件。在缺省情況(AutoReDraw=False)下, Load 事件過程是不能在窗體中顯示輸出的。2022/7/20窗體主要事件Activate 事件Load 事件發(fā)生后,系統(tǒng)還會(huì)自動(dòng)產(chǎn)生一個(gè) Activate 事件。Activate 事件過程處理完成后,程序進(jìn)入“等待事件”狀態(tài),當(dāng)某一事件發(fā)生,就對(duì)其過程進(jìn)行處理,之后再等待下一事件發(fā)生。UnLoad 事件當(dāng)用戶關(guān)閉窗體時(shí),會(huì)發(fā)生一個(gè) Unload 事件。Resize事件Resize事件是當(dāng)程序運(yùn)行后,窗體的大小被改變時(shí)觸發(fā)的事件。 2022/7/

22、20Print 方法格式:對(duì)象名. Print 表達(dá)式 ,| ;表達(dá)式 說明:(1) 對(duì)象名 可以是窗體、立即窗口、圖片框、打印機(jī)。(2) 表達(dá)式 可以是數(shù)值或字符串表達(dá)式。(3)當(dāng)輸出多個(gè)表達(dá)式時(shí)用分隔符隔開。 逗號(hào):分區(qū)格式輸出,以 14 個(gè)字符為一區(qū); 分號(hào)或空格:緊湊格式輸出。(4)執(zhí)行 Print 方法時(shí),命令行的末尾有逗號(hào)或分號(hào),則下一次 Print 方法在同一行接著打印,否則下次 Print 方法另起一行。窗體主要方法2022/7/20Cls 方法格式: . ClsCls 用于清除由Print方法顯示的文本或在圖片框中顯示的圖形,并把光標(biāo)移到對(duì)象的左上角(0,0)。窗體主要方法2

23、022/7/20Move 方法格式:對(duì)象名. Move 左邊距 , 上邊距 , 寬度 , 高度 Move方法可在程序中移動(dòng)窗體和控件,并可以改變其大小。窗體主要方法2022/7/20綜合運(yùn)用 例2.5可擴(kuò)大的窗體。設(shè)計(jì)一個(gè)窗體,窗體的標(biāo)題為“可擴(kuò)大的窗體”,在界面設(shè)計(jì)時(shí)為窗體加載一幅任意圖形。運(yùn)行程序時(shí),單擊窗體使窗體的長(zhǎng)和寬都擴(kuò)大原來的1.1倍,并使窗體居中顯示。 例2.6變色窗體。設(shè)計(jì)一個(gè)窗體,窗體的標(biāo)題為“變色窗體”。運(yùn)行程序時(shí),單擊窗體,使窗體變成綠色,并使窗體向下和向右都移動(dòng)100Twip,同時(shí)在窗體輸出窗體的位置。單擊窗體的關(guān)閉按鈕,使窗體變成紅色,同時(shí)在窗體的標(biāo)題輸出系統(tǒng)時(shí)間。

24、2022/7/20順序結(jié)構(gòu)程序設(shè)計(jì) 在事件驅(qū)動(dòng)機(jī)制中,由用戶激發(fā)的某個(gè)事件去執(zhí)行相應(yīng)的事件過程。這些事件處理過程之間并無特定的執(zhí)行順序,但每個(gè)事件過程內(nèi)部卻包含著三種結(jié)構(gòu)。在順序結(jié)構(gòu)中,語句將按照出現(xiàn)的順序逐條執(zhí)行。 2022/7/20例3.1 簡(jiǎn)單電路。R110歐,R220歐,R330歐,電源電壓恒定不變,若開關(guān)S1閉合,S2斷開時(shí),電流表的讀數(shù)是0.3A,求(1)電源電壓多大?(2)當(dāng)S1和S2都斷開時(shí),電流表的讀數(shù)多大?(3)當(dāng)S1、S2都閉合時(shí),電流表的讀數(shù)是多大? 2022/7/20變量名 = 表達(dá)式或: 對(duì)象名. 屬性名 = 表達(dá)式賦值語句的含義是: (1)計(jì)算賦值號(hào)右邊表達(dá)式的值

25、; (2)將此值賦給賦值號(hào)左邊的標(biāo)識(shí)符代表的變量或控件屬性,作為它的當(dāng)前值; (3)該值一直保存到下一次再對(duì)它賦值為止。賦值語句基本含義2022/7/20賦值相容 賦值語句中的標(biāo)識(shí)符代表一個(gè)存儲(chǔ)單元。 執(zhí)行賦值語句時(shí),如果這個(gè)存儲(chǔ)單元的結(jié)構(gòu)和大小能夠正確地表示賦值號(hào)右邊的表達(dá)式的值,那么,就稱該賦值語句是賦值相容的。2022/7/20數(shù)值型與字符串型 1.如果字符串的形式表示數(shù)值,則可將字符串賦予數(shù)值變量。也可將數(shù)值賦予字符串變量。 2.如果把非數(shù)值形式的字符串賦給數(shù)值變量,則會(huì)出現(xiàn)運(yùn)行錯(cuò)誤。 3.把一個(gè)整數(shù)賦給一個(gè)實(shí)變量,將不會(huì)出什么錯(cuò); 4.當(dāng)把一個(gè)長(zhǎng)整數(shù)賦給一個(gè)單精度變量,就可能會(huì)受示數(shù)

26、精度的影響。2022/7/20注釋語句格式: 注釋內(nèi)容 撇號(hào)說明: 1. 此語句僅起注釋作用,不被解釋和編譯。 2. 任何字符(包括漢字)都可以作為注釋內(nèi)容。 3. 此語句可放在過程、模塊的開頭,也可放在執(zhí)行語句的后面,但必須是一行中的最后一個(gè)語句。2022/7/20暫停語句格式: Stop說明: 1. 可放在過程中的任何地方,用來暫停程序執(zhí)行,相當(dāng)于設(shè)置斷點(diǎn)。 2. 類似于 Run 菜單中的 Break 命令,系統(tǒng)將自動(dòng)打開立即窗口(Debug),方便程序員調(diào)試跟蹤程序。 3. 調(diào)試完畢,生成可執(zhí)行文件之前,應(yīng)刪去所有的Stop 語句。2022/7/20結(jié)束語句格式: End說明: 1. 通

27、常用來結(jié)束程序的執(zhí)行。 2. 程序沒有 End 語句,或雖然有,但沒執(zhí)行,運(yùn)行沒有影響,但不能正常結(jié)束。 3. 為了保持完整性,程序應(yīng)該通過 End 語句結(jié)束執(zhí)行。 4. 其它用途: End Sub 結(jié)束一個(gè) Sub 過程 End Function 結(jié)束一個(gè) Function 過程 End If 結(jié)束一個(gè) If 語句塊 End Type 結(jié)束記錄類型定義 End Select 結(jié)束情況語句2022/7/20命令按鈕 (CommandButton)控件 命令按鈕是最常使用的控件之一。命令按鈕最多設(shè)置的屬性是Caption,一般使用屬性窗口設(shè)置該屬性,以便修改命令按鈕的標(biāo)題。命令按鈕最常使用的事件

28、是Click。 2022/7/20命令按鈕屬性(1)(名稱)在程序中它是識(shí)別命令按鈕的標(biāo)識(shí)符。窗體中第一個(gè)建立的命令缺省名稱是Command1,后續(xù)的命令按鈕缺省名稱分別是Command2、Command3等。名稱屬性為只讀屬性。只讀屬性的含義是,這樣的屬性只允許在界面設(shè)計(jì)時(shí)修改,在程序中不能修改這樣的屬性。(2)Caption屬性Caption屬性是字符串類型,是顯示在命令按鈕上的標(biāo)題。即可以在界面設(shè)計(jì)時(shí)通過屬性窗口修改,也可以使用代碼設(shè)置。 2022/7/20(3)Default屬性Default屬性是布爾類型,當(dāng)命令按鈕的Default屬性設(shè)置為True時(shí),按回車鍵等效于用鼠標(biāo)單擊該按鈕

29、。一個(gè)窗體只能有一個(gè)命令按鈕的Default屬性設(shè)置為True。命令按鈕的Default屬性缺省值為False。(4)Cancel屬性Cancel屬性是布爾類型,當(dāng)命令按鈕的Cancel屬性設(shè)置為True時(shí),按Esc鍵等效于用鼠標(biāo)單擊該按鈕。一個(gè)窗體只能有一個(gè)命令按鈕的Cancel屬性設(shè)置為True。命令按鈕的Cancel屬性缺省值為False。 2022/7/20(5)Style屬性和Picture屬性Style屬性決定命令按鈕的外觀,只能取0或1。當(dāng)此屬性設(shè)置為0時(shí),表示標(biāo)準(zhǔn)命令按鈕,該按鈕只能顯示文字,并且不能改變背景顏色和前景顏色,更不能顯示圖標(biāo)。當(dāng)此屬性設(shè)置為1時(shí),表示圖形命令按鈕,

30、圖形即能顯示文字,能改變背景顏色和前景顏色,也能顯示圖標(biāo)。命令按鈕的Picture屬性同窗體的Picture屬性,用來顯示圖形。(6)ToolTipText屬性ToolTipText屬性是字符串類型,用于設(shè)置命令按鈕的提示信息,運(yùn)行程序過程中,若鼠標(biāo)指向命令按鈕并停留時(shí),顯示命令按鈕ToolTipText的字符串。2022/7/20(8)Enabled屬性Enabled屬性是布爾類型,用于設(shè)置命令按鈕是否可以操作,運(yùn)行程序時(shí),若命令按鈕的Enabled屬性設(shè)置為False,命令按鈕呈灰色,此時(shí)命令按鈕禁止操作。當(dāng)命令按鈕的Enabled屬性設(shè)置為True時(shí),允許用戶操作命令按鈕。(9)Visi

31、ble屬性Visible屬性是布爾類型,用于設(shè)置命令按鈕是否可見。(10)其它屬性 命令按鈕也有和大小、位置有關(guān)的屬性,有Height、Left、Top和Width。不同的是,窗體的Left和Top是相對(duì)于屏幕,命令按鈕的Left和Top是相對(duì)于窗體。另外,命令按鈕能夠輸出文字,因此有與Font相關(guān)的屬性。 2022/7/20例3.2老師和學(xué)生。設(shè)計(jì)一個(gè)窗體,在窗體上添加兩個(gè)命令按鈕。運(yùn)行程序時(shí),“老師”可以操作,“學(xué)生”不能操作,單擊“老師”按鈕后“老師”不能操作,“學(xué)生”可以操作。單擊“學(xué)生”后,命令按鈕狀態(tài)恢復(fù)成原始狀態(tài)。用鼠標(biāo)指向命令按鈕并停留時(shí),顯示提示信息。2022/7/20命令按

32、鈕事件命令按鈕它是用戶與程序交互的最簡(jiǎn)便的方法。命令按鈕除最常使用的Click事件。命令按鈕常用到的事件有:Mouse Down事件、MouseUp事件、MouseMove 事件等。Mouse Down事件 2022/7/20例3.3事件順序。設(shè)計(jì)一個(gè)窗體,在窗體上添加一個(gè)命令按鈕。并編寫命令按鈕被壓下、單擊和抬起的事件過程,在事件過程中輸出命令按鈕的狀態(tài)。要求命令按鈕被壓下和正常狀態(tài)分別顯示不同圖形。 2022/7/20標(biāo)簽控件標(biāo)簽控件(Label)也稱標(biāo)簽或標(biāo)簽框,是最常使用的控件之一,常用于輸出文本,顯示提示信息,用標(biāo)簽控件輸出的文本、提示信息不能編輯、修改。所以標(biāo)簽控件常用來輸出標(biāo)題、

33、顯示處理結(jié)果或標(biāo)識(shí)那些不帶Caption屬性的控件,如下面講的TextBox控件。 2022/7/20標(biāo)簽控件屬性(1)(名稱)屬性在界面設(shè)計(jì)時(shí),用Name屬性設(shè)置標(biāo)簽控件的名稱。隨著標(biāo)簽控件的建立,系統(tǒng)賦給標(biāo)簽控件的隱含名稱為L(zhǎng)abel1、Label2等,在隱含名稱中Label永遠(yuǎn)保持不變,變化的是后邊的序號(hào),能表示出是第幾個(gè)添加的標(biāo)簽控件。在程序中對(duì)控件的操作,都是通過名稱來識(shí)別對(duì)象。(2)Caption屬性Caption屬性是字符串類型,用于設(shè)置該標(biāo)簽控件的標(biāo)題。該屬性值就是標(biāo)簽控件要顯示的內(nèi)容,它既可以在屬性窗口中設(shè)定,也可用代碼改變控件顯示的內(nèi)容。 2022/7/20(3)Align

34、ment屬性數(shù)值型,用于設(shè)置標(biāo)題的對(duì)齊方式,可設(shè)置為0、1和2,其作用分別是: 左對(duì)齊、 右對(duì)齊和 中間對(duì)齊。(4)AutoSize屬性AutoSize屬性是布爾類型,標(biāo)簽的大小是否隨標(biāo)題內(nèi)容的大小自動(dòng)調(diào)整。當(dāng)該屬性設(shè)置為True時(shí),標(biāo)簽的大小隨標(biāo)題內(nèi)容自動(dòng)調(diào)整,使標(biāo)簽的大小正好適應(yīng)標(biāo)題,且不換行。當(dāng)該屬性設(shè)置為False時(shí),標(biāo)簽的大小不隨標(biāo)題內(nèi)容自動(dòng)調(diào)整,標(biāo)題超過標(biāo)簽尺寸的部分不能顯示。確省值為False。2022/7/20(5)BorderStyle屬性數(shù)值型,用于設(shè)置邊框的樣式,只能取0或1,其作用如下:0標(biāo)簽無邊界線,確省值。1標(biāo)簽有邊界線。(6)BackStyle屬性數(shù)值型,用于設(shè)置

35、背景的樣式,只能取0或1,其作用如下:0透明顯示,確省值。1不透明顯示。2022/7/20文本框 (TextBox)控件 文本框?qū)傩裕?)Text屬性Text屬性是字符串類型,用于設(shè)置文本框中顯示的文字。該屬性值是文本框要顯示的內(nèi)容,它既可以在屬性窗口中設(shè)定,也可用代碼改變控件顯示的內(nèi)容。(2)PasswordChar屬性PasswordChar屬性是字符串類型,用于設(shè)置文本框中顯示的字符,常用于口令輸入。 2022/7/20(3)Multiline屬性Multiline屬性是布爾類型,用于設(shè)置文本框中是否可以輸入多行文本。缺省值是False,此時(shí)文本框中只能輸入一行文本。當(dāng)設(shè)置該屬性為Tru

36、e時(shí),文本框可以輸入多行文本。當(dāng)該屬性設(shè)置為False時(shí),PasswordChar屬性才能發(fā)揮作用。(4)ScrollBars屬性 ScrollBars屬性是數(shù)值型,用于設(shè)置文本框中是否有滾動(dòng)條,什么樣的滾動(dòng)條??扇≈?、1、2、3,缺省值是0。 2022/7/20文本框事件和方法文本框支持Click和DblClick事件,常用的事件還有:(1)Change事件在文本框中輸入信息或在程序中改變Text屬性值時(shí),都會(huì)觸發(fā)該事件。(2)LostFocus事件按下Tab鍵或用鼠標(biāo)單擊其它對(duì)象使焦點(diǎn)離開該文本框時(shí),觸發(fā)該事件。(3)KeyPree事件當(dāng)文本框具有焦點(diǎn)時(shí),按下任意鍵,都會(huì)觸發(fā)該事件。通常

37、可用該事件檢查輸入的字符。 2022/7/20TextBox控件常用的方法有:SetFocus方法,其作用是把焦點(diǎn)設(shè)置到指定的對(duì)象,如:Text1. SetFocus將使當(dāng)前窗體中的文本框text1能夠接收鍵盤輸入的字符。2022/7/20綜合運(yùn)用 例3.6字符和ASCII例3.7相對(duì)運(yùn)動(dòng)一平板車,質(zhì)量M=100千克,停在水平路面上。車身的平板離地面的高度h=1.25米,一質(zhì)量m=50千克的小物塊置于車的平板上,它到車尾端的距離b=1.00米,與車板間的滑動(dòng)摩擦系數(shù)u=0.20,如圖所示。今對(duì)平板車施一水平方向的恒力,使車向前行駛,結(jié)果物塊從車板上滑落。物塊剛離開車板的時(shí)刻,車向前行駛的距離S

38、0=2.0米。求物塊落地時(shí),落地點(diǎn)到車尾的水平距離S。不計(jì)路面與平板車間以及輪軸之間的摩擦,取g=9.8米/秒2。 2022/7/20認(rèn)識(shí)選擇控件和分支程序設(shè)計(jì) 例4.1設(shè)置字體。 運(yùn)行程序時(shí),先選擇字體、字形、字體顏色和效果,再單擊“確定”,程序?qū)凑者x擇設(shè)置標(biāo)題為“程序設(shè)計(jì)”的標(biāo)簽框。 2022/7/20分支程序設(shè)計(jì) 行If結(jié)構(gòu)行If結(jié)構(gòu)要求把判斷結(jié)構(gòu)寫在一行。行If結(jié)構(gòu)有如下兩種形式:?jiǎn)畏种У男蠭f結(jié)構(gòu),格式如下:If 邏輯表達(dá)式 Then 語句組1雙分支的行If結(jié)構(gòu),格式如下: If 邏輯表達(dá)式 Then 語句組1 Else 語句組2 演示2022/7/20邏輯表達(dá)式語句組1語句組2邏

39、輯表達(dá)式語句組1演示2022/7/20例4.2找最小數(shù)。設(shè)計(jì)一個(gè)窗體,在窗體上添加四個(gè)標(biāo)簽、四個(gè)文本框和兩個(gè)命令按鈕。運(yùn)行程序時(shí),先在輸入要比較的三個(gè)數(shù),再單擊“確定”,程序?qū)⒄页鋈齻€(gè)數(shù)中最小的數(shù),并把計(jì)算結(jié)果顯示在最小數(shù)文本框中。 2022/7/20塊If結(jié)構(gòu) 單分支的塊If結(jié)構(gòu),格式如下:If 邏輯表達(dá)式 Then 語句序列End If雙分支的塊IF結(jié)構(gòu),格式如下:If 邏輯表達(dá)式 Then 語句序列1Else 語句序列2End If2022/7/20多分支的塊IF結(jié)構(gòu),格式如下:If 邏輯表達(dá)式1 Then 語句序列1ElseIf 邏輯表達(dá)式2 Then 語句序列2ElseIf邏輯表達(dá)式

40、n Then 語句序列nElse 語句序列n+1End If2022/7/20塊If結(jié)構(gòu)的嵌套 上邊介紹了塊If結(jié)構(gòu)的基本形式,在實(shí)際使用中常需要復(fù)雜的多重選擇,用一個(gè)塊If結(jié)構(gòu)是不行的,必須用嵌套的塊If結(jié)構(gòu)。所謂嵌套的塊If結(jié)構(gòu),指在一個(gè)塊If結(jié)構(gòu)中,又包含另一個(gè)塊If結(jié)構(gòu)。 2022/7/20例4.3判斷三角形。設(shè)計(jì)一個(gè)窗體,在窗體上添加五個(gè)標(biāo)簽、三個(gè)文本框和兩個(gè)命令按鈕。運(yùn)行程序時(shí),先在輸入文本框中輸入邊長(zhǎng),再單擊“判斷”,程序?qū)⑴袛嗍欠衲軜?gòu)成三角形及其具體的形狀:銳角,直角,鈍角,并把計(jì)算結(jié)果顯示在結(jié)論標(biāo)簽框中。 2022/7/20多分支結(jié)構(gòu) 有時(shí)程序可能有多種選擇,可以使用多分支結(jié)

41、構(gòu)。多分支結(jié)構(gòu)以多分支語句Select Case開頭,以End Select結(jié)束,Select Case語句也稱情況語句,它適用于描述較多分支。使用該結(jié)構(gòu)會(huì)使程序簡(jiǎn)潔,多分支結(jié)構(gòu)的格式為:Select Case 測(cè)試表達(dá)式 Case 表達(dá)式列表1 語句序列1 Case 表達(dá)式列表2 語句序列2 Case 表達(dá)式列表n 語句序列n Case Else 語句序列n+1 End Select 2022/7/20例4.4成績(jī)?cè)u(píng)定。設(shè)計(jì)一個(gè)窗體,在窗體上添加兩個(gè)標(biāo)簽、兩個(gè)文本框和兩個(gè)命令按鈕。運(yùn)行程序時(shí),先在輸入文本框中輸入一個(gè)百分制的成績(jī),再單擊“計(jì)算”,程序?qū)⒂?jì)算出結(jié)論,并把結(jié)論顯示在文本框中。成績(jī)

42、大于等于90結(jié)論為“優(yōu)秀”,成績(jī)?cè)?0到90(含80、不含90)結(jié)論為“良好”,成績(jī)?cè)?0到80(含60、不含80)結(jié)論為“及格”, 60以下結(jié)論為“不及格”。若單擊“結(jié)束”按鈕,結(jié)束程序運(yùn)行。 2022/7/20單選按鈕 (OptionButton)控件 單選按鈕外觀是一個(gè)圓圈。運(yùn)行程序時(shí),若單擊單選按鈕,則圓圈中間會(huì)出現(xiàn)一個(gè)黑色的圓點(diǎn),表示該項(xiàng)被選擇。一組單選按鈕只能有一個(gè)被選擇。 2022/7/20單選按鈕的屬性(1)Value屬性Value屬性標(biāo)志單選按鈕是否被選擇,若單選按鈕被選擇,則它的Value屬性值為True,未被選擇其值為False(缺省值)。(2)Caption屬性單選按鈕

43、的標(biāo)題,是字符串類型。(3)名稱和其他屬性 2022/7/20單選按鈕的事件單選按鈕控件支持Click事件。運(yùn)行程序時(shí)單擊單選按鈕,便觸發(fā)Click事件,若存在該按鈕的事件過程,將執(zhí)行此事件過程。通常不編寫這樣的事件過程。 2022/7/20復(fù)選按鈕 (CheckBox)控件 復(fù)選按鈕也稱檢查框,該控件可用來提供多選擇,用戶可以從中選擇一個(gè)或多個(gè),還可以一個(gè)也不選擇。復(fù)選按鈕外觀是一個(gè)小方框,若單擊某一個(gè)復(fù)選按鈕,則在小方框中間將出現(xiàn)“”符號(hào)標(biāo)記,表示該項(xiàng)被選擇。若再次單擊被選擇的復(fù)選按鈕,則取消對(duì)該復(fù)選按鈕的選擇。 2022/7/20復(fù)選按鈕的屬性(1)Value屬性復(fù)選按鈕Value屬性是

44、數(shù)值型,其值為0表示未被選擇,其值為1表示被選擇,其值為2表示禁止用戶選擇,此時(shí)復(fù)選按鈕為灰色,0是缺省值。(2)Caption屬性復(fù)選按鈕的標(biāo)題,是字符串類型。(3)名稱和其他屬性 2022/7/20框架 (Frame)控件 框架控件主要用于創(chuàng)建多個(gè)單選按鈕或復(fù)選按鈕組。在操作一個(gè)框架內(nèi)的單選按鈕時(shí),不會(huì)影響該框架外的單選按鈕??蚣苁且粋€(gè)控件的容器,當(dāng)框架設(shè)置為不能操作或不可見時(shí),框架中的控件也變得不能操作或不可見。 2022/7/20框架控件的屬性(1)Caption屬性框架控件的標(biāo)題,是字符串類型。 (2)名稱和其他屬性 2022/7/20框架控件的事件框架控件支持Click事件,通常不

45、編寫這樣的事件過程。在界面設(shè)計(jì)時(shí),要先建立框架,然后在框架內(nèi)畫上其他控件。不要把框架外的控件拖動(dòng)到框架內(nèi),這樣的控件不屬于該框架的。 2022/7/20列表框和組合框 例4.5旅游信息查詢。設(shè)計(jì)一個(gè)窗體,在窗體上添加一個(gè)組合框、一個(gè)列表框、兩個(gè)標(biāo)簽和一個(gè)命令按鈕。運(yùn)行程序時(shí),用戶可從請(qǐng)選擇目的地中選擇地名,在旅游信息列表中將出現(xiàn)旅游景區(qū)。 2022/7/20列表框?qū)傩裕?)Text屬性返回列表框被選擇的列表項(xiàng)目,是字符串類型。在列表框中該屬性為只讀屬性,界面設(shè)計(jì)階段不能修改。(2)ListIndex屬性設(shè)置或返回列表框被選擇的列表項(xiàng)的序號(hào),是整型。在列表框中第一個(gè)列表項(xiàng)序號(hào)為0,第二個(gè)列表項(xiàng)序

46、號(hào)為1,最后一個(gè)列表項(xiàng)目序號(hào)為L(zhǎng)istcount-1。(3)Listcount屬性 返回列表框列表項(xiàng)的個(gè)數(shù),是整型。 2022/7/20(4)List屬性字符串?dāng)?shù)組,每個(gè)元素都是列表框的一個(gè)列表項(xiàng)內(nèi)容。在界面設(shè)計(jì)時(shí),利用List屬性可以輸入列表項(xiàng)目,在代碼中可以引用該數(shù)組。(5)Sorted屬性確定列表項(xiàng)是否按升序排列,是邏輯型,通過屬性窗口設(shè)置。設(shè)置為True表示按升序排列列表項(xiàng)目,否則按增加先后次序排列。(6)Sorted屬性確定列表項(xiàng)是否按升序排列,是邏輯型,通過屬性窗口設(shè)置。設(shè)置為True表示按升序排列列表項(xiàng)目,否則按增加先后次序排列。 2022/7/20(7)MultiSelect屬

47、性確定是否一次可選擇多個(gè)列表項(xiàng),是整型,通過屬性窗口設(shè)置??扇≈?、1和2,0表示每次只能選擇一項(xiàng);1表示簡(jiǎn)單多項(xiàng)選擇,一次可以選擇多項(xiàng);2表示擴(kuò)展多項(xiàng)選擇,按下Ctrl或Shift鍵+鼠標(biāo)單擊,一次可以選擇多項(xiàng)。(8)Selected屬性在支持多項(xiàng)選擇中,判斷被選擇的列表項(xiàng)。是邏輯型數(shù)組,在設(shè)計(jì)階段不可用,當(dāng)數(shù)組元素為True時(shí),表示該項(xiàng)被選擇,為False時(shí),表示該項(xiàng)未被選擇。(9)名稱和其他屬性2022/7/20列表框的事件和方法1列表框的事件列表框控接收Click事件、DblClick事件和LostFocus等事件,但大多數(shù)程序編寫DblClick事件過程。2. 列表框的方法列表框可以

48、使用的方法有AddItem、RemoveItem和Clear。利用它們可以在程序運(yùn)行期間修改列表框的內(nèi)容。 2022/7/20組合框是具有文本框控件與列表框控件特性的控件。組合框系統(tǒng)的隱含名稱為Combo1、Combo2等。 2022/7/20組合框?qū)傩裕?)Style屬性當(dāng)Style設(shè)置為0時(shí)(默認(rèn)樣式),是下拉式組合框。單擊右側(cè)的箭頭時(shí)打開選項(xiàng)列表,可從打開的列表中選擇列表項(xiàng)目,選擇的列表項(xiàng)目將顯示在文本框中。也可直接在文本框中輸入文本,在DropDown等事件過程中把文本框內(nèi)容增加到組合框中。當(dāng)Style設(shè)置為1時(shí),是簡(jiǎn)單組合框。這時(shí)文本框右側(cè)無箭頭按鈕,它看起來象一個(gè)文本框和一個(gè)標(biāo)準(zhǔn)列

49、表框的結(jié)合,列表項(xiàng)始終顯示在列表框中??梢詮牧斜碇羞x擇項(xiàng),也可以直接在文本框中輸入文本。 當(dāng)Style設(shè)置為2時(shí),是下拉式列表框,它與下拉式組合框相似。單擊右側(cè)的箭頭時(shí)打開選項(xiàng)列表,可從打開的列表中選擇列表項(xiàng)目,選擇的列表項(xiàng)目將顯示在文本框中;通過輸入可以快速選擇文本。與下拉式組合框不同的是:它不能在文本框中輸入新的內(nèi)容。 2022/7/20(2)Text屬性返回列表框被選擇的列表項(xiàng)目,是字符串類型。在Style為0或1時(shí)可以鍵入文本。 組合框的(名稱)屬性系統(tǒng)隱含為Combo1,Combo2等。在列表框中的屬性同樣適于組合框。 2022/7/20組合的事件和方法組合框的Style取值不同,能

50、響應(yīng)的事件也有差異,只有簡(jiǎn)單組合框能響應(yīng)DblClick事件,下拉式組合框和下拉式列表框能響應(yīng)DropDown,所有組合框都能響應(yīng)Click事件。在列表框中可以使用的方法同樣適于組合框。 2022/7/20MsgBox函數(shù)和MsgBox語句 MsgBox函數(shù)的一般格式如下: MsgBox(內(nèi)容,類型,標(biāo)題,幫助文件,主題編號(hào)) 例4.6 確認(rèn)刪除列表項(xiàng)。設(shè)計(jì)一個(gè)窗體,在窗體上添加一個(gè)列表框和兩個(gè)命令按鈕。運(yùn)行程序時(shí),先選擇要?jiǎng)h除的列表項(xiàng),單擊“刪除”按鈕,彈出含有詢問對(duì)話框,根據(jù)用戶的不同選擇進(jìn)行不同處理。 2022/7/20MsgBox語句MsgBox的語句格式如下。 MsgBox 內(nèi)容,類

51、型,標(biāo)題,幫助文件,主題編號(hào) 在程序中MsgBox語句不能提供返回值,一般只用來嶄停一下程序。 2022/7/20綜合運(yùn)用 例4.7選課。設(shè)計(jì)一個(gè)窗體,在窗體上添加五個(gè)標(biāo)簽框、四個(gè)組合框、一個(gè)文本框和兩個(gè)命令按鈕。運(yùn)行程序時(shí),先選擇課程、教師和學(xué)分并輸入姓名,單擊“登記”按鈕,彈出對(duì)話框,根據(jù)用戶的不同選擇進(jìn)行登記或放棄登記。 例4.8歌詠比賽。設(shè)計(jì)一個(gè)窗體,在窗體上添加在窗體上添加一個(gè)標(biāo)簽、兩個(gè)文本框、三個(gè)命令按鈕和兩個(gè)框架。兩個(gè)框架內(nèi)分別畫上單選按鈕和復(fù)選按鈕。運(yùn)行程序時(shí),輸入歌手姓名、選擇性別和參賽項(xiàng)目后,單擊“登記”將在文本框登記一行,單擊“下一個(gè)”清除輸入的姓名和選擇,為輸入下一個(gè)準(zhǔn)

52、備,每次登記信息占一行,單擊“退出”按鈕,結(jié)束程序運(yùn)行。 2022/7/20認(rèn)識(shí)圖片框和循環(huán)程序設(shè)計(jì) “例5.1正弦曲線。設(shè)計(jì)一個(gè)窗體,在窗體上添加一個(gè)圖片框和四個(gè)命令按鈕。運(yùn)行程序時(shí),單擊繪制曲線、繪制坐標(biāo)、輸出標(biāo)記,可分別在圖片框中繪制正弦曲線、坐標(biāo)系和標(biāo)記。 2022/7/20繪圖方法 坐標(biāo)系在VB中,窗體和圖片框都有確省的坐標(biāo)系。確省的坐標(biāo)系規(guī)定坐標(biāo)的原點(diǎn)在窗體和圖片框可用空間的左上角,向下為Y方向,向右為X方向,單位是Twip。1440個(gè)Twip為1英寸。使用這樣的坐標(biāo)系繪圖非常困難,用戶可用Scale方法設(shè)置自己的坐標(biāo)系。Scale方法的一般格式:對(duì)象名. Scale(x1,y1)

53、-(x2,y2) 2022/7/20PSet方法畫點(diǎn)用PSet方法可以在窗體或圖片框上繪制一個(gè)點(diǎn)。PSet方法的一般格式: 對(duì)象名. PSet(x,y),顏色 2022/7/20Line方法 用Line方法可以在窗體或圖片框上繪制一條直線或繪制一個(gè)矩形。Line方法的一般格式:對(duì)象名. Line (x1,y1)- (x2,y2) ,顏色 ,BF其中,(x1,y1)為始點(diǎn)坐標(biāo);(x2,y2)為終點(diǎn)坐標(biāo);顏色可以使用RGB函數(shù),規(guī)定畫線或畫矩形的顏色。關(guān)鍵字B表示畫矩形或填充矩形。當(dāng)FillStyle屬性為1時(shí),表示畫空心矩形。FillStyle屬性可取值0到7,除FillStyle屬性為1外,都

54、為畫填充矩形,此時(shí)由FillStyle屬性決定填充圖案,由FillColor屬性決定填充顏色。 2022/7/20 Circle方法用Line方法可以在窗體或圖片框上繪制一條直線或繪制一個(gè)矩形。用Circle方法可以在窗體或圖片框上繪制圓、圓弧、扇形或橢圓。Circle方法的一般格式是:對(duì)象名. Circle (x,y),半徑 ,顏色 , 起始角 , 終止角 , 長(zhǎng)短軸比率其中,(x,y)為圓心坐標(biāo);顏色可以使用RGB函數(shù);起始角和終止角應(yīng)使用弧度,值在02時(shí)繪制圓弧,取負(fù)值時(shí)繪制扇形;使用長(zhǎng)短軸比率可用繪制橢圓。 2022/7/20循環(huán)結(jié)構(gòu) 循環(huán)結(jié)構(gòu)用來描述有規(guī)律地重復(fù)執(zhí)行某一程序段。VB

55、6.0支持循環(huán)結(jié)構(gòu)的語句有for、和do等語句,使用循環(huán)控制結(jié)構(gòu)編程可以簡(jiǎn)化程序,提高效率。 ForNext結(jié)構(gòu) ForNext結(jié)構(gòu)在程序中可以實(shí)現(xiàn)固定次數(shù)的循環(huán)。ForNext結(jié)構(gòu)的格式如下:For 循環(huán)變量 = 初值 To 終值 Step 步長(zhǎng) 循環(huán)體 Exit ForNext 循環(huán)變量 2022/7/20例5.2連乘之積。設(shè)計(jì)一個(gè)窗體,在窗體上添加兩個(gè)命令按鈕。運(yùn)行程序時(shí),單擊“計(jì)算”,程序?qū)棾鲚斎雽?duì)話框,要求輸入數(shù)據(jù),輸入5個(gè)數(shù)之后,將在窗體輸出5個(gè)數(shù)之積。 2022/7/20 DoLoop結(jié)構(gòu) Do WhileLoop形式 Do While 邏輯表達(dá)式 循環(huán)體 Exit Do Lo

56、op Do UntilLoop形式 Do Until 邏輯表達(dá)式 循環(huán)體 Exit Do Loop2022/7/20Do Loop While形式 Do 循環(huán)體 Exit Do Loop While 邏輯表達(dá)式 Do Loop Until形式 Do 循環(huán)體 Exit Do Loop Until 邏輯表達(dá)式 2022/7/20循環(huán)的嵌套 在一個(gè)循環(huán)結(jié)構(gòu)的循環(huán)體內(nèi)含有另一個(gè)循環(huán)結(jié)構(gòu),這就形成了嵌套循環(huán),又叫做多重循環(huán)。判斷正誤Do While b1 For j=k1 To k2LoopNext jDo For j=k1 To k2 Next jLoop While b1Do For j=k1 To

57、 k2 Next jLoop While b12022/7/20圖片框和圖像框 圖片框和圖像框都能加載圖像文件。圖片框功能更強(qiáng),它不僅可以顯示圖像,還可以用繪圖方法繪制圖形、用Print方法顯示文本,圖片框也能作為其他控件的容器??杉虞d到這兩個(gè)控件上的圖像文件擴(kuò)展名是:.Bmp 、.Dib、Ico、.Cur、. Emf、.Wmf或. Gif。2022/7/20圖片框和圖像框的屬性(1)Picture屬性設(shè)置圖片框和圖像框要顯示的圖形??稍谠O(shè)計(jì)階段加載圖像文件,也可以在程序運(yùn)行時(shí)加載圖像文件。(2)AutoSize屬性設(shè)置圖片框是否能自動(dòng)改變大小以適應(yīng)圖形,該屬性是邏輯型。當(dāng)取值True時(shí),圖片

58、框隨著圖形實(shí)際大小自動(dòng)調(diào)整尺寸以適應(yīng)圖形的尺寸;若取值False時(shí), 圖片框不能改變大小,此時(shí)若圖片框小于圖形尺寸,圖形被裁剪。圖片框的AutoSize屬性缺省為False。 2022/7/20(3)Stretch屬性設(shè)置能否自動(dòng)改變圖形的大小以適應(yīng)圖像框,該屬性是邏輯型。若取值True時(shí), 圖像框不能改變大小,此時(shí)圖形被壓縮或拉伸以適應(yīng)圖像框;當(dāng)取值False時(shí),圖像框隨著圖形實(shí)際大小自動(dòng)調(diào)整尺寸以適應(yīng)圖形的尺寸。圖像框的Stretch屬性缺省為False。(4)名稱和其他屬性2022/7/20在代碼中加載圖形要使用LoadPicture函數(shù)。把LoadPicture函數(shù)值賦給圖片框或圖像框

59、的Picture屬性,便可實(shí)現(xiàn)在圖片框或圖像框中顯示圖形。一般使用的格式為:對(duì)象名.Picture=LoadPicture(圖形文件名)2022/7/20例隨手畫。本程序演示MouseMove事件過程的用法,在Picture1中隨手畫在Picture1中壓下鼠標(biāo)左鍵并拖動(dòng)鼠標(biāo)可繪制圖形2022/7/20 圖片框和圖像框事件和方法圖片框和圖像框都支持Click和DblClick事件,但很少對(duì)它們編程。另外圖片框和窗體一樣支持MouseMove、MouseDown、MouseUp等事件。圖片框常用方法在本章第2節(jié)介紹了PSet方法、Line方法、Circle方法。這里主要介紹Cls方法和Print

60、方法Cls方法用于清除圖片框中顯示的文字信息或用繪圖方法繪制的圖形。Print方法用于在圖片框中顯示的文字信息。和在窗體使用這兩個(gè)方法完全相同。Cls方法的一般格式是:對(duì)象名. Cls2022/7/20其他圖形控件在VB除圖像框和圖片框控件是專門處理圖形的控件外,還有畫線控件和形狀控件,使用這兩個(gè)控件可以非常方便地構(gòu)造幾何圖形,一般不需要編程。1、 Line畫線控件Line控件可以用來畫線。畫線操作的步驟如下:2、 Shape形狀控件Shape控件可以用來畫矩形、正方形、橢圓、圓、圓角矩形和圓角正方形。通過Shape屬性可確定所需要的幾何形狀。Shape控件的Shape屬性取值0到5,其形狀分

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論