【文章內(nèi)容簡介】
– 同一類型的控件通過控件數(shù)組可以共享同一個事件過程 – 屬性的共享 ? 加一個控件 ? 設(shè)置屬性 ? 加另一個控件:右擊控件 /復(fù)制 /粘貼 ? 查看另一個控件的屬性 ? 常州工學院計算機系 36 五、數(shù) 組 – 事件過程的共享 ? 加一個控件 ? 設(shè)置事件過程 ? 加另一個控件:右擊控件 /復(fù)制 /粘貼 ? 查看另一個控件的事件過程進行比較 – 元素: text1(0),text1(1),text1(2) – 優(yōu)點:編寫的代碼比較簡單且易于維護 ? 常州工學院計算機系 37 六、枚 舉 類 型 ?枚舉:將變量的可能值一一列舉出來 , 變量的取值只限于列舉出來的值得范圍內(nèi) ?語法: [private | public] Enum Style_name element1 [ =常數(shù)表達式 ] element2 [ =常數(shù)表達式 ] … End Enum ? 常州工學院計算機系 38 舉例: 1. Private Enum Days Monday =1 Tuesday Wednesday Thursday Friday Saturday Sunday End Enum Dim a as Days a = Tuesday a=? a= 2 必須先聲明后使用! ? 常州工學院計算機系 39 七、用戶自定義類型 ?數(shù)組能夠存放一組性質(zhì)相同的數(shù)據(jù),例如:一批學生某門的課的成績: Dim score( 50) As Integer Score(1)=95 ?但若同時要表示學生的姓名和考試成績,因為數(shù)據(jù)的性質(zhì)不同,則需要聲明兩個數(shù)組 – Dim Score(50) As Intege 存放其對應(yīng)的考試成績 – Dim Name(50) as String 存放學生的姓名 Name(1)=“張三”: Score(1)=95 ? 常州工學院計算機系 40 用戶自定義類型 ? 這樣的問題其實可以通過用戶自定義類型來實現(xiàn) ? 用戶自定義類型,也可稱為記錄類型。它由若干個標準數(shù)據(jù)類型組成。 ? 語法: [private | public] Type var_name elementname1 as type_name1 elementname2 as type_name2 … End Type ? 常州工學院計算機系 41 用戶自定義類型 ?舉例: Private Type UserType ID as integer Name as String End Type Dim a as UserType =“張某某 ” =1 ? 常州工學院計算機系 42 用戶自定義類型 ?注意: – 自定義數(shù)據(jù)類型一般在標準模塊( .bas)中定義,默認是 Public。若在窗體模塊中定義,必須是Private – 自定義數(shù)據(jù)類型中元素的類型可以是字符串,但必須是定長字符串。 – 一旦定義好了類型,就可以在變量的聲明時使用該類型 – 要表示自定義類型變量中的某個元素,形式如下: 變量名 . 元素名 ? 常州工學院計算機系 43 八、 VB的基本控制結(jié)構(gòu) ? 1. 順序結(jié)構(gòu) ?2. 選擇結(jié)構(gòu) ?3. 循環(huán)結(jié)構(gòu) ? 常州工學院計算機系 44 A B e A B T F e A A e T F T F 順序結(jié)構(gòu) 分支結(jié)構(gòu) 當型 循環(huán) 直到型 循環(huán) ? 常州工學院計算機系 45 1. 順序結(jié)構(gòu) ?基本形式 變量名=表達式 – 表達式可以是任何類型的表達式,一般其類型應(yīng)該和變量的類型相一致。 – VB帶有強制類型轉(zhuǎn)換功能 ? 常州工學院計算機系 46 2. 分支結(jié)構(gòu) ? If e Then [A組語句 ] End If ? If e Then [A組語句 ] 單 分支結(jié)構(gòu)語句 e A T F .: If x5 then y=x^2+4 End if If x5 then y=x^2+4 ? 常州工學院計算機系 47 ? If e Then [A組語句 ] Else [B組語句 ] End If ? If e Then 語句 1 Else 語句 2 e A B T F 雙 分支結(jié)構(gòu) ? 常州工學院計算機系 48 多 分支結(jié)構(gòu) If e1 Then [A1組語句 ] ElseIf e2 Then [A2組語句 ] …… [Else An+1組語句 ] End If 注意: ElseIf是連著寫,中間沒有空格。 ? 常州工學院計算機系 49 A1 T F e2 e1 en A2 An F An +1 T T F … … ? 常州工學院計算機系 50 ?注意: – 條件:是必要的參數(shù),其結(jié)果為 True 或False – 在塊形式中 , If 塊必須以一個 End If 語句結(jié)束 。 Else 和 ElseIf 子句都是可選的 。 在 If 塊中 , 可以放置任意多個 ElseIf 子句 , 但是都必須在 Else 子句之前 。 ? 常州工學院計算機系 51 Select Case結(jié)構(gòu)語句 Select Case e Case c1 A 組語句 Case c2 B 組語句 …… Case Else n 組語句 End Select e:測試表達式,可以為任何數(shù)值表達式或字符串表達式 ? 常州工學院計算機系 52 C1,c2情況表達式,可以為以下幾種形式: ? 表達式 ? 表達式 To 表達式 ? Is 關(guān)系運算符 表達式 ? 多個情況表達式值,中間用 “ , ” 進行隔開 Case 6 Case “6” Case 1 To 9 Case Is 10 Case 1,3,5,7,9 ? 常州工學院計算機系 53 3. 循環(huán)結(jié)構(gòu) For v=e1 To e2 [Step e3 ] …… [Exit For] …… Next [v] For循環(huán)語句 ? 常州工學院計算機系 54 A V超過 e2? v=e1 計算 e1, e2, e3 V=v+e3 T F 當知道循環(huán)次數(shù)的時候最還是使用此結(jié)構(gòu),功能: 1)當循環(huán)控制變量在給定范圍內(nèi),則執(zhí)行循環(huán)體內(nèi)的語句塊,否則跳出循環(huán),執(zhí)行 next 后的語句。 2)當執(zhí)行到 next時,循環(huán)控制變量自加步長,然后跳回第一步,重新判斷循環(huán)控制變量是否在給定范圍內(nèi) ? 常州工學院計算機系 55 ? 例: s=1+3+5+………… +99 ? s=1+ ( 1+2 ) + ( 1+2+3 ) +…… +( 1+2+…… 10) ? 任意輸入一個自然數(shù) , 判斷是否為素數(shù) ? 求 m和 n的最大公約數(shù) ? 常州工學院計算機系 56 Do…Loop 循環(huán)語句 用 DO循環(huán)重復(fù)執(zhí)行一語句塊,且重復(fù)次數(shù)不定。 Do…Loop 語句有 4種形式,但每種形式都會對循環(huán)條件進行判斷以決定是否繼續(xù)執(zhí)行循環(huán)。循環(huán)條件必須是一個值為 True或False的表達式。 ? 常州工學院計算機系 57 ? Do While e … [Exit Do] … Loop e A T F Exit Do A 首先測試循環(huán)條件:如果循環(huán)條件為 False或零,則跳過后面的循環(huán)語句序列。 如果循環(huán)條件為 True或非零,則VB將進入循環(huán)體執(zhí)行語句,執(zhí)行語句后退回到 Do While語句再測試循環(huán)條件。 例:s=1+2+3…… +100 ? 常州工學院計算機系 58 Do … [Exit Do] … Loop While e T F A e Exit Do A ? 常州工學院計算機系 59 Do Until e … [Exit Do] … Loop e A F T Exit Do A ? 常州工學院計算機系 60 Do … [Exit Do] … Loop Untile e A e F T Exit Do A ? 常州工學院計算機系 61 多重循環(huán)語句 ? 多重循環(huán)語句也稱為循環(huán)語句的嵌套 , 就是在一個循環(huán)體內(nèi)又出現(xiàn)