日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

廣州電大VB網(wǎng)絡(luò)課程

 春秀心田 2011-02-16
 

《Visual Basic程序設(shè)計(jì)》重點(diǎn)輔導(dǎo)

第一章  VB語(yǔ)言概述

一、 基本要求

1.掌握VB程序設(shè)計(jì)的特點(diǎn)。

2.理解可視化設(shè)計(jì)和事件驅(qū)動(dòng)編程的概念。

二、問題解答

1、VB程序設(shè)計(jì)的特點(diǎn)是什么?

VB是Windows環(huán)境下的應(yīng)用程序開發(fā)工具,其最突出的兩個(gè)特點(diǎn)是:可視化編程和事件驅(qū)動(dòng)。

VB的另一個(gè)顯著特點(diǎn)是交互式,所謂交互式是指在編寫代碼過程中出現(xiàn)語(yǔ)法錯(cuò)誤時(shí)系統(tǒng)會(huì)立即獲得通知,并在開發(fā)過程中可運(yùn)行程序進(jìn)行調(diào)試。

2.如何理解可視化編程和事件驅(qū)動(dòng)的概念。

(1)可視化編程

傳統(tǒng)的編程方法使用的是面向過程、按順序進(jìn)行的機(jī)制,其缺點(diǎn)是程序員始終要關(guān)心什么時(shí)候發(fā)生什么事情,應(yīng)用程序的界面都需要程序員編寫語(yǔ)句來實(shí)現(xiàn),對(duì)于圖形界面的應(yīng)用程序,只有在程序運(yùn)行時(shí)才能看到效果,一旦不滿意,還需要修改程序,因而使得開發(fā)工作非常煩瑣。用VB進(jìn)行應(yīng)用程序開發(fā)主要有兩部分工作:即設(shè)計(jì)界面和編寫代碼。在開發(fā)過程中所看到的界面,與程序運(yùn)行時(shí)的界面基本相同,同時(shí)VB還向程序員提供了若干界面設(shè)計(jì)所需要的對(duì)象(稱為控件),在設(shè)計(jì)界面時(shí),只需將所需要的控件放到窗口的指定位置即可,整個(gè)界面設(shè)計(jì)過程基本不需要編寫代碼。概括地說可視化編程就是程序員在開發(fā)過程中能看到界面的實(shí)際效果。

(2)事件驅(qū)動(dòng)

用VB開發(fā)的應(yīng)用程序,代碼不是按照預(yù)定的路徑執(zhí)行,而是在響應(yīng)不同的事件時(shí)執(zhí)行不同的代碼片段。事件可以由用戶操作觸發(fā),如單擊鼠標(biāo)、鍵盤輸入等事件。也可以由來自操作系統(tǒng)或其它應(yīng)用程序的消息觸發(fā)。這些事件的順序決定了代碼執(zhí)行的順序。概括地說事件驅(qū)動(dòng)是指應(yīng)用程序沒有預(yù)定的執(zhí)行路徑,而是由程序運(yùn)行過程中的事件決定。

 

第二章  VB6.0 集成開發(fā)環(huán)境

一、基本要求

1.掌握窗體、工程窗口、屬性窗口、代碼編輯器窗口的功能與使用。

2.掌握VB編程的基本步驟,會(huì)設(shè)計(jì)簡(jiǎn)單的VB程序。

3.理解對(duì)象、屬性、事件和方法的概念及其之間的關(guān)系。

4.了解工具箱中各種控件的功能與使用。

二、問題解答

1.VB可視化編程的一般步驟是什么?

一般步驟是:

(1)設(shè)計(jì)界面

 先建立窗體,再利用控件在窗體上創(chuàng)建各種對(duì)象。

(2)設(shè)置屬性

 設(shè)置窗體或控件等對(duì)象的屬性。

(3)編寫代碼

2.什么是對(duì)象、屬性、事件和方法?

(1)對(duì)象:從廣義上來說,對(duì)象是客觀事物的一個(gè)實(shí)體。在可視化編程語(yǔ)言中,對(duì)象分為兩類,一類由系統(tǒng)設(shè)計(jì),可以直接使用或?qū)ζ溥M(jìn)行操作,如工具箱中的控件、窗體和菜單等,另一類由用戶定義。

(2)屬性:屬性是一個(gè)對(duì)象的特性,不同的對(duì)象有不同的屬性。對(duì)象常見的屬性有標(biāo)題(Caption)、 名稱(Name)、顏色(Color)、字體(Font) 、是否可見(Visible)等。通過修改對(duì)象的屬性,可以改變對(duì)象的外觀和功能。

(3)事件:所謂事件就是發(fā)生在對(duì)象上的事情。在VB中,系統(tǒng)為每個(gè)對(duì)象預(yù)先定義好了一系列的事件。例如單擊(Click) 事件、雙擊(Dbclick)事件、裝入(Load)事件、改變(Change)事件、鼠標(biāo)移動(dòng)(MouseMove)事件、獲取焦點(diǎn)(GotFocus)事件等。對(duì)象的事件是固定的,用戶不能建立新的事件。當(dāng)事件由用戶觸發(fā)(如單擊)或由系統(tǒng)觸發(fā)(如裝入時(shí)),對(duì)象就會(huì)對(duì)該事件作出響應(yīng),響應(yīng)某個(gè)事件后所執(zhí)行的程序代碼就是事件過程。

例如:命令按紐Command1的Click(單擊)事件過程為:

 Private Sub Command1_Click()

     Form1.BackColor=vbRed

 End Sub

 過程中的代碼Form1.BackColor=vbRed表示將窗體的背景顏色設(shè)置成紅色。運(yùn)行時(shí),用鼠標(biāo)單擊命令按紐Command1,就會(huì)執(zhí)行該事件過程,將窗體的背景顏色設(shè)置成紅色。

(4)方法:在面向?qū)ο蟮某绦蛟O(shè)計(jì)中,引入了稱為方法(Method)的特殊過程和函數(shù)供用戶直接調(diào)用。如對(duì)象打?。≒rint)方法、顯示窗體(Show)方法、清除(Cls)方法、移動(dòng)(Move)方法等。用戶可直接調(diào)用,不能進(jìn)行修改。

例如:FirstForm.print"歡迎使用Visual Basic"

該語(yǔ)句使用.print方法在名稱為FirstForm的窗體上顯示字符串"歡迎使用Visual Basic"。

3.對(duì)象、事件和方法三者之間的關(guān)系如何?

在VB編程中,完成某種功能可通過觸發(fā)對(duì)象事件和調(diào)用對(duì)象方法,而觸發(fā)事件和調(diào)用對(duì)象方法都必須基于某個(gè)對(duì)象。觸發(fā)某個(gè)事件實(shí)際上就是執(zhí)行一個(gè)事件過程代碼段,在該代碼段中又可以隨意調(diào)用對(duì)象方法,而調(diào)用對(duì)象方法不可能觸發(fā)某個(gè)事件。

 例如:在窗體上添加一個(gè)命令按紐,編寫一個(gè)響應(yīng)Command1的單擊(Click)事件過程如下:

 Private Sub Command1_Click()

    Command1.Caption="顯示窗體" 

    Form2.Show

End Sub

上述代碼段表明單擊對(duì)象按鈕Command1觸發(fā)單擊事件,即執(zhí)行上述代碼。在執(zhí)行上述事件過程中又調(diào)用了顯示窗體(Form2)的方法。

 4.屬性和方法有何區(qū)別和聯(lián)系?試舉例說明。

對(duì)象的屬性是描述對(duì)象的一組特征。如設(shè)置對(duì)象的名稱、標(biāo)題、顏色、大小等,有的可直接在設(shè)計(jì)界面時(shí)通過屬性窗口進(jìn)行設(shè)置,有的可以在事件過程或通用過程代碼中進(jìn)行設(shè)置。對(duì)象的方法是在對(duì)象上實(shí)施某種操作的功能,不能在設(shè)計(jì)界面時(shí)調(diào)用對(duì)象方法,一般在過程代碼中可隨意調(diào)用,根據(jù)需要還可以添加適當(dāng)?shù)膮?shù)。設(shè)置對(duì)象屬性和調(diào)用對(duì)象方法均可在代碼設(shè)計(jì)中進(jìn)行,其一般格式為:

 對(duì)象名.屬性名=屬性值                        (設(shè)置對(duì)象屬性)

 對(duì)象名.方法名                               (調(diào)用對(duì)象方法)

 5.VB6.0的三種工作模式和功能是什么?

VB6.0的三種工作模式和功能是設(shè)計(jì)模式、運(yùn)行模式和中斷模式。

 設(shè)計(jì)模式:可以進(jìn)行用戶界面的設(shè)計(jì)和代碼的編寫。

運(yùn)行模式:運(yùn)行應(yīng)用程序,此時(shí)不可以編輯代碼,也不可以編輯界面。

中斷模式:應(yīng)用程序運(yùn)行暫時(shí)中斷,此時(shí)可以編寫代碼,但不可以編輯界面。

第三章  程序設(shè)計(jì)基礎(chǔ)

一、 基本要求

1.了解VB中定義的13種標(biāo)準(zhǔn)數(shù)據(jù)類型。

2.掌握變量、常量的概念及其數(shù)據(jù)類型。掌握變量的命名規(guī)則,理解變量聲明的含義。

3.掌握數(shù)組(包括靜態(tài)數(shù)組與動(dòng)態(tài)數(shù)組)的概念與聲明。

4.理解記錄類型(用戶自定義類型)的定義。

5.掌握各種運(yùn)算符與表達(dá)式的含義和應(yīng)用,掌握運(yùn)算符的優(yōu)先級(jí)。

6.掌握賦值語(yǔ)句、注釋語(yǔ)句、條件分之語(yǔ)句(If Then、If Then Else、If Then ElseIf、Select Case)、循環(huán)語(yǔ)句(Do…Loop、For…Next、For Each…Next、While…Wend)的含義及書寫格式。

7.理解常見標(biāo)準(zhǔn)函數(shù)(交互式函數(shù)、類型轉(zhuǎn)換函數(shù)、數(shù)學(xué)函數(shù)、日期和時(shí)間函數(shù)、字符串函數(shù)、目錄和文件函數(shù))的用途。

二、問題解答

 1.VB定義了哪幾種數(shù)據(jù)類型?變量有哪幾種數(shù)據(jù)類型?常量有哪幾種數(shù)據(jù)類型?

解答:數(shù)據(jù)是程序的必要組成部分,也是程序處理的對(duì)象。在各種程序設(shè)計(jì)語(yǔ)言中,數(shù)據(jù)類型的規(guī)定和處理方法是各不相同的。Visual Basic不但提供了系統(tǒng)定義的數(shù)據(jù)類型,而且還允許用戶定義自己的數(shù)據(jù)類型

在VB6.0定義了13種數(shù)據(jù)類型,它們是整型、長(zhǎng)整型、單精度浮點(diǎn)型、雙精度浮點(diǎn)型、貨幣型、字節(jié)型、變長(zhǎng)字符串、定長(zhǎng)字符串、布爾型、日期型、對(duì)象型、可變類型(數(shù)值)、可變類型(字符)。

變量是指在程序運(yùn)行過程中其值可以改變的量,變量的數(shù)據(jù)類型如下:

         

  常量是指在程序運(yùn)行期間其值不發(fā)生變化的量。常量的數(shù)據(jù)類型有:字符串常量、數(shù)值型常量、布爾型常量、日期型常量。

在VB中有兩種形式的常量,即直接常量和符號(hào)常量。符號(hào)常量又可分為系統(tǒng)內(nèi)部常量和自定義常量。

直接常量是指在程序代碼中,以直接明顯的形式給出的數(shù),根據(jù)常量的數(shù)據(jù)類型分,有上述四種數(shù)據(jù)類型的常量。例如:

"歡迎使用Visual Basic"  '字符串常量

 12345                     '數(shù)值型常量

 True                        '布爾型常量

 #11/10/2002#         '日期型常量

 系統(tǒng)內(nèi)部常量是應(yīng)用程序和控件提供的,這些常量的定義可以從"對(duì)象瀏覽器"中獲得。如VbBlue所表示的顏色值為&HFF0000, 描述為藍(lán)色。

 自定義常量是為方便用戶開發(fā)而引入的符號(hào)常量。自定義常量使用關(guān)鍵字Const進(jìn)行聲明。例如:

 Const Pi = 3.14159        ¢聲明符號(hào)常量Pi為3.14159 ,單精度型。

2.變量的命名規(guī)則是什么?

解答:VB變量的命名規(guī)則如下:

第一個(gè)字符必須是字母。

長(zhǎng)度不超過255個(gè)字符。

不可以包含小數(shù)點(diǎn)或者內(nèi)嵌的類型聲明字符。

不能使用關(guān)鍵字。

不能與過程名或符號(hào)常量同名。

3.如何聲明變量?

解答:

(1)隱式聲明

變量可以不經(jīng)聲明而直接使用,此時(shí)該變量為可變類型變量。在可變類型變量中,可以存放任何類型的數(shù)據(jù),如數(shù)值、字符串、日期和時(shí)間。雖然這種方法很方便,但常會(huì)導(dǎo)致難以查找的錯(cuò)誤。所以一般采用顯示聲明變量的方法。

(2)顯示聲明

格式:Dim|Private|Static|Public<變量名> [As <類型>]

Dim:在窗體模塊、標(biāo)準(zhǔn)模塊或過程中聲明變量。

Private:在窗體模塊或過程中聲明變量,使變量?jī)H在該模塊或過程中有效。

Static:在過程中定義靜態(tài)變量,即使該過程結(jié)束,也仍然保留變量的值。

Public:在標(biāo)準(zhǔn)模塊中聲明全局變量,使變量在整個(gè)應(yīng)用程序中有效。

如:   Dim Sum As Long         ¢聲明變量Sum為長(zhǎng)整形

為了保證所有變量都能得到聲明,可以使用VB的強(qiáng)制聲明功能,這樣,只要在運(yùn)行時(shí)遇到一個(gè)未經(jīng)明確聲明的變量名,VB就會(huì)發(fā)出錯(cuò)誤警告。要強(qiáng)制顯示聲明變量,可在窗體模塊或標(biāo)準(zhǔn)模塊的聲明段中加入語(yǔ)句:Option Explicit

應(yīng)當(dāng)注意的是:Option Explicit語(yǔ)句的作用范圍僅限于語(yǔ)句所在模塊,所以對(duì)每個(gè)需要

強(qiáng)制顯示變量聲明的窗體模塊、標(biāo)準(zhǔn)模塊及類模塊。必須將Option Explicit語(yǔ)句放在這些模塊的聲明段中。

全局變量是可以在工程中的所有程序模塊使用的變量,使用關(guān)鍵字Public聲明的變量可以被工程中的任一窗體、任一模塊中的任一過程或函數(shù)使用。全局變量的聲明只能位于標(biāo)準(zhǔn)模塊的聲明部分。

4.?dāng)?shù)組、靜態(tài)數(shù)組和動(dòng)態(tài)數(shù)組的聲明。

(1)數(shù)組是有序數(shù)據(jù)的集合。數(shù)組的定義語(yǔ)法如下:

Dim 數(shù)組名 ([[下標(biāo)下界To]下標(biāo)上界])[As數(shù)據(jù)類型]

(2)靜態(tài)數(shù)組是指數(shù)組元素的個(gè)數(shù)是固定不變的,即它們占用的內(nèi)存空間大小是固定不變的。

(3)動(dòng)態(tài)數(shù)組是指在程序執(zhí)行過程中數(shù)組元素的個(gè)數(shù)可以改變的數(shù)組。

5.在VB中有幾類運(yùn)算符和表達(dá)式?

運(yùn)算是用來對(duì)運(yùn)算對(duì)象進(jìn)行各種運(yùn)算的的操作符號(hào),而表達(dá)式是由多個(gè)運(yùn)算對(duì)象和運(yùn)算符組合在一起的合法算式。在VB中有6類運(yùn)算符和表達(dá)式:

算術(shù)運(yùn)算符和算術(shù)表達(dá)式

字符串運(yùn)算符(連接運(yùn)算符)和字符串表達(dá)式

關(guān)系運(yùn)算符和關(guān)系表達(dá)式

布爾運(yùn)算符(邏輯運(yùn)算符)和布爾表達(dá)式

日期運(yùn)算符和日期表達(dá)式

對(duì)象運(yùn)算符和對(duì)象表達(dá)式

用的最多的主要是前四種。

(1)算術(shù)運(yùn)算符和算術(shù)表達(dá)式

優(yōu)先級(jí)

算術(shù)運(yùn)算符

運(yùn)算

算術(shù)表達(dá)式例子

結(jié)果

1

^

 乘方

3^2

9

2

-

取負(fù)

- 4

-4

3

*

乘法

3*6

18

3

/

浮點(diǎn)除法

10/3

3.33333333333

4

\

整數(shù)除法

10\3

3

5

Mod

取模

10Mod3

1

6

+

加法

3+4

7

6

-

減法

3-4

-1

 

(2) 字符串運(yùn)算符(連接運(yùn)算符)和字符串表達(dá)式

字符串運(yùn)算符有兩個(gè):"&"、"+",其作用都是將兩個(gè)字符串連接起來,合并成一個(gè)新的字符串。

 "&"會(huì)自動(dòng)將非字符串類型的數(shù)據(jù)轉(zhuǎn)換成字符串后再進(jìn)行連接,而"+"則不能自動(dòng)轉(zhuǎn)換。例如:

  "Hello"&"World"          結(jié)果為" Hello World" 

 "Check"&123          結(jié)果為" Check123"

 "Check"+123                錯(cuò)誤

(3)關(guān)系運(yùn)算符和關(guān)系表達(dá)式

關(guān)系運(yùn)算符用于對(duì)兩個(gè)表達(dá)式的值進(jìn)行比較,比較的結(jié)果為布爾值True (真)或False(假)。

運(yùn)算符

運(yùn)算

關(guān)系表達(dá)式例子

結(jié)果

=

等于

2=3

False

<>或><

不等于

2<>3

True

大于

2>3

False

小于

2<3

True

>=

大于等于

2>=3

False

<=

小于等于

2<=3

False

 

(4)布爾運(yùn)算符(邏輯運(yùn)算符)和布爾表達(dá)式

布爾運(yùn)算符兩邊的表達(dá)式要求為布爾值。布爾表達(dá)式的結(jié)果值仍為布爾值。

布爾運(yùn)算符

優(yōu)先級(jí)

運(yùn)算符

運(yùn)算

說明

例子

結(jié)果

1

Not

當(dāng)表達(dá)式為假時(shí),結(jié)果為真。

Not(3>8)

True

2

And

當(dāng)兩個(gè)表達(dá)式均為真時(shí),結(jié)果才為真,否則為假。

(3>8)And(5<6)

False

3

Or

當(dāng)兩個(gè)表達(dá)式均為假時(shí),結(jié)果才為假,否則為真。

(3>8)Or(5<6)

True

4

Xor

異或

當(dāng)兩個(gè)表達(dá)式同時(shí)為真或同時(shí)為假時(shí),結(jié)果為假,否則為真。

(3<8)Xor(5<6)
(3>8)Xor(5<6)

False
True

5

Eqv

等階

當(dāng)兩個(gè)表達(dá)式同時(shí)為真或同時(shí)為假時(shí),結(jié)果為真,否則為假。

(3<8)Xor(5<6)
(3>8)Xor(5<6)

True
False

6

Imp

蘊(yùn)含

當(dāng)?shù)谝粋€(gè)表達(dá)式為真,且第二個(gè)表達(dá)式為假時(shí),結(jié)果為假,否則為真。

(3<8) Imp(5>6)

False

 

(5)日期型表達(dá)式

日期型表達(dá)式由算術(shù)運(yùn)算符"+"、"-"、算術(shù)表達(dá)式、日期型常量、內(nèi)存變量和函數(shù)組成。日期型數(shù)據(jù)是一種特殊的數(shù)值型數(shù)據(jù),它們之間只能進(jìn)行"+"、"-"運(yùn)算。有下面三種情況:

兩個(gè)日期型數(shù)據(jù)相減,結(jié)果是一個(gè)數(shù)值型數(shù)據(jù)(兩個(gè)日期相差的天數(shù))。例如:

     #12/19/1999#-#11/16/1999#         '結(jié)果為數(shù)值型數(shù)據(jù):33

一個(gè)表示天數(shù)的數(shù)值型數(shù)據(jù)可加到日期型數(shù)據(jù)中或從日期型數(shù)據(jù)中減掉,其結(jié)果仍然為一日期型數(shù)據(jù)。

  6.運(yùn)算符的優(yōu)先級(jí)。

 解答:數(shù)值運(yùn)算符和字符串運(yùn)算符®關(guān)系運(yùn)算符®布爾運(yùn)算符

例如:設(shè)a=3,b=5,c=-1,d=7,則以下表達(dá)式按標(biāo)注①~⑩的順序進(jìn)行運(yùn)算。

     

 

第四章 窗體和基本輸入、輸出

一、 基本要求

1.掌握Print方法和與Print方法有關(guān)的Tab函數(shù)和Spc函數(shù),InputBox函數(shù)、MsgBox函數(shù)和語(yǔ)句的使用方法。

2.理解函數(shù)調(diào)用和Format函數(shù)。

二、問題解答

1.如何用 Print方法輸出數(shù)據(jù)?

Print方法用于在窗體、圖片框、打印機(jī)和立即窗口等對(duì)象上輸出數(shù)據(jù)。

Print方法的格式為:

[對(duì)象] .Print expressionlit

對(duì)象可以是窗體、圖片框、打印機(jī)等或立即窗口,如果省略"對(duì)象名",則在當(dāng)前窗體上輸出。

例如:

Picture1.print"Visual Basic"      '在圖片框Picture1中顯示:"Visual Basic"

Print"Visual Basic"             '在當(dāng)前窗體中顯示:"Visual Basic"

Debug. print"Visual Basic" '在立即窗口中顯示:"Visual Basic"

Expressionlit可以是算術(shù)表達(dá)式、字符串表達(dá)式、關(guān)系表達(dá)式或布爾表達(dá)式,多個(gè)表達(dá)式之間的分隔符為逗號(hào)或分號(hào)。

Print方法的特點(diǎn)

(1)Print方法具有計(jì)算和輸出雙重功能,對(duì)于表達(dá)式先計(jì)算后顯示。例如:

Print"aa"&"bb";-5*6;Not2<=3         '顯示:aabb-30False

(2) Print方法有兩種顯示格式:分區(qū)格式和緊湊格式。

當(dāng)各表達(dá)式之間用逗號(hào)作為分隔符時(shí),則按分區(qū)格式顯示數(shù)據(jù)項(xiàng),以14個(gè)字符位置為單位把一個(gè)輸出行分成若干區(qū)段,每個(gè)區(qū)段輸出一個(gè)表達(dá)式的值。當(dāng)各表達(dá)式之間用分號(hào)作為分隔符時(shí),則按緊湊格式輸出數(shù)據(jù),后一項(xiàng)緊跟前一項(xiàng)輸出,但要在每個(gè)數(shù)值后面增加一個(gè)空格,如果數(shù)值為正值,將把正號(hào)顯示為空格。例如:

Private Sub Form_Activate()

Print "12345678901234567890"

 Print "2+4="; 2 + 4

Print "2-4=", 2 - 4

End Sub

輸出結(jié)果:

12345678901234567890

2+4= 6

2-4=          -2

(3)一般情況下,每執(zhí)行一次Print方法都要自動(dòng)換行,即每次執(zhí)行Print時(shí),都會(huì)在新的一行上輸出數(shù)據(jù)。如果要在同一行上輸出數(shù)據(jù),則可以在末尾加上分號(hào)或逗號(hào)。當(dāng)使用分號(hào)時(shí),下一個(gè)Print輸出的內(nèi)容將緊跟在當(dāng)前Print所輸出的信息后面;如果使用逗號(hào),則在同一行上跳到下一個(gè)顯示區(qū)段顯示下一個(gè)Print所輸出的內(nèi)容。例如:

Private Sub Form_Activate()

Print "12345678901234567890"

 Print "2+4="; 2 + 4,

 Print "2-4=";

 Print 2 - 4

End Sub

輸出結(jié)果:

12345678901234567890

2+4=6         2-4=-2

(4)如果Print后不用任何項(xiàng),則輸出一個(gè)空行,或者取消前面Print末尾的逗號(hào)或分號(hào)的作用。例如:

Private Sub Form_Activate()

 Print "12345678901234567890"

Print              '產(chǎn)生空行

Print "2+4="; 2 + 4,

Print              '取消上面一句末尾逗號(hào)的作用,使下一個(gè)Print在新的一行輸出

Print "2-4=";

Print 2 - 4

End Sub

輸出結(jié)果:

12345678901234567890

2+4= 6

2-4=-2

(5) Print方法在Form-Load事件過程中不起作用。若要在Form-Load事件中顯示數(shù)據(jù),必須使用Show方法或者把AutoRedraw屬性設(shè)置為True。

前面的例子可改為:

Private Sub Form_Load()

Form1.Show

 Print "12345678901234567890"

Print "2+4="; 2 + 4,

Print "2-4=";

 Print 2 - 4

End Sub

輸出結(jié)果:

12345678901234567890

2+4=6         2-4=-2

2.與Print方法有關(guān)的函數(shù)

(1)Tab函數(shù)

格式:Tab(n)

表示在指定的第n個(gè)位置上輸出數(shù)據(jù)。

例如:

Private Sub Form_Activate()

Print "12345678901234567890"

 Print "Hello"; Tab(10); "World"    '第二個(gè)輸出項(xiàng)在第10列輸出

 Print "Hello"; Tab; "World"        'Tab函數(shù)無參數(shù),第二個(gè)在第二個(gè)打印區(qū)列輸出

 Print "Hello"; Tab(4); "World"     'n小于當(dāng)前位置,第二項(xiàng)在下一行輸出

  Print Tab(-5); "Hello"            'n小于1,在第一列輸出

End Sub

輸出結(jié)果:

12345678901234567890

Hello     World

Hello         World

Hello

World

Hello

(2)Spc函數(shù)

格式:Spc (n)

功能;跳過n個(gè)空格

例如:

Print "Hello"; Spc (4); "World"

輸出結(jié)果:Hello    World

3.InputBox函數(shù)

InputBox函數(shù)顯示一個(gè)能接受用戶輸入的對(duì)話框,等待用戶輸入數(shù)據(jù),并返回用戶在對(duì)話框中輸入的信息。

4.MsgBox函數(shù)

MsgBox函數(shù)提供的是輸出對(duì)話框,顯示"錯(cuò)誤"、"指示"、"警告"之類的簡(jiǎn)短信息以及"確定"、"取消"等按鈕。

5. Format函數(shù)

Format函數(shù)可以使數(shù)值、日期或字符串按指定的格式輸出。

 

第五章  常用控件

一、 基本要求

1.掌握標(biāo)簽, 文本框, 命令按鈕, 單選按鈕, 復(fù)選框, 列表框、滾動(dòng)條、  圖片框、框架的使用方法,能夠利用這些控件通過設(shè)置其屬性在窗體上設(shè)計(jì)應(yīng)用程序界面。

2.理解對(duì)話框、組合框、計(jì)時(shí)器、Image控件的基本用法。

二、各種控件的屬性

1.標(biāo)簽(Label)控件

標(biāo)簽(Label)用于顯示用戶不能編輯、修改的文本。主要用來顯示提示信息,可以用作標(biāo)題、欄目或輸入輸出區(qū)域的標(biāo)識(shí),也可作為結(jié)果信息輸出區(qū)域,常與Text控件一起使用。其主要屬性為:

                                                    標(biāo)簽控件的屬性

屬性

說明

Name

用于標(biāo)識(shí)窗體、控件的名稱。每一個(gè)控件均有該屬性,以后不再重復(fù)。

Caption

標(biāo)簽的標(biāo)題,缺省情況下標(biāo)簽控件中唯一可見的部分。

BorderStyle

用于設(shè)置標(biāo)簽的加框形式,0-標(biāo)簽不帶邊框,1-帶一個(gè)立體邊框。

BackColor

設(shè)置標(biāo)簽的背景色。

BackStyle

設(shè)置標(biāo)簽的背景模式,1-標(biāo)簽不透明,0-標(biāo)簽透明。

ForeColor

設(shè)置Caption的顏色。

Font

設(shè)置Caption的字體。

Alignment

設(shè)置Caption的排列方式,0-左對(duì)齊,1-居中對(duì)齊,2-右對(duì)齊。

AutoSize

用于是否自動(dòng)改變標(biāo)簽的尺寸以適應(yīng)其內(nèi)容,若該屬性設(shè)為True,標(biāo)簽就會(huì)根據(jù)Caption屬性的內(nèi)容進(jìn)行水平變化。

WordWrap

為了使Caption屬性的內(nèi)容自動(dòng)換行并垂直擴(kuò)充,應(yīng)將該屬性設(shè)為True。此時(shí)AutoSize也應(yīng)為True。

 

2.文本框(TextBox)控件

文本框(TextBox)通常用來顯示用戶輸入的信息,常作為接收用戶輸入的接口?;蛟谠O(shè)計(jì)及運(yùn)行時(shí)為其Text屬性賦值,起信息輸出的作用。TextBox控件顯示的文本一般是可以被用戶編輯、修改的。其主要屬性為:

                                                    文本框控件的屬性

屬 性

說 明

Text

文本框中包含的文本內(nèi)容。

MultiLine

該屬性值為True時(shí)可以接收多行文本。此時(shí),PassWordChar屬性將不起作用。

ScrollBars

0-沒有滾動(dòng)條,1-水平,2-垂直,3-同時(shí)具有水平及垂直。

PassWordChar

指定顯示在文本框中的替代符,如一串"*"號(hào)等,主要用于口令輸入。

MaxLength

指定顯示在文本框中的字符數(shù),超出部分不接收。

Locked

決定控件是否可編輯。

 

3.命令按鈕(CommandButton)控件

命令按鈕常常用接收用戶的操作信息,激發(fā)相應(yīng)的事件過程。它是用戶與程序交互的最簡(jiǎn)便的方法。

                                                   命令按紐控件的屬性

說 明

Caption

按紐的標(biāo)題,即顯示在按紐的文本

Font

設(shè)置Caption字體、字體樣式及大小等

Default

該屬性為True時(shí),指定它為窗體的缺省按紐

Cancel

該屬性為Ture時(shí),指定它為窗體的缺省取消按紐

Style

0-按紐的外觀是標(biāo)準(zhǔn)Windows風(fēng)格,1-允許帶有自定義圖片

Picture

Style為1時(shí),指定粘貼到按紐上的圖形文件

DownPicture

Style為1時(shí),指定按紐按下時(shí)顯示的圖形文件

DisabledPicture

Style為1時(shí),指定按紐無效時(shí)顯示的圖形文件

Eabled

該屬性設(shè)為False時(shí),表示控件不可用,呈暗色顯示

Visible

該屬性設(shè)為False時(shí),表示控件不可見

 

 

 

4.單選按紐(OptionButton)控件

  OptionButton用于提供一個(gè)可以打開或者關(guān)閉的選項(xiàng)。在使用時(shí),一般將幾個(gè)選項(xiàng)按紐組成一組,在同一組中,用戶只能選擇其中的一項(xiàng)。

                                                OptionButton控件的常用屬性

屬 性

說 明

Value

表示按紐的狀態(tài)。Value屬性為True時(shí),表示選擇了該按紐,為False時(shí),表示沒有選擇該按紐。Value屬性的缺省值為False。

Alignment

決定按紐中文本的對(duì)齊方式。0-Left Justify時(shí)表示左對(duì)齊,1-Right Justify時(shí)表示右對(duì)齊。

 Style

用于控制選項(xiàng)按紐的外觀

Enabled

該屬性的值若被設(shè)為False,表示對(duì)應(yīng)的選項(xiàng)被禁止,運(yùn)行時(shí)將灰色顯示。

 

5.復(fù)選框(CheckBox)控件

 CheckBox 與 OptionButton的作用差不多,只是CheckBox允許用戶從程序提供的多個(gè)選項(xiàng)中選中一個(gè)或多個(gè)選擇。CheckBox組中某個(gè)選項(xiàng)被選中時(shí),其它選項(xiàng)不會(huì)失敗。

6.列表框(ListBox)控件

該控件用于顯示項(xiàng)目列表,從列表中可以選擇一項(xiàng)或多項(xiàng)。如果項(xiàng)目總數(shù)超過了可顯示的項(xiàng)目數(shù),Visual Basic會(huì)自動(dòng)給列表框加上滾動(dòng)條。

                                          列表框控件的屬性

屬 性

說 明

Style

設(shè)置列表框的外形

List

設(shè)置添加到列表框中的選項(xiàng)內(nèi)容

Columns

指定列表框中的列數(shù)。0-垂直滾動(dòng)單列,1-水平滾動(dòng)單列,大于1-水平滾動(dòng)多列。滾動(dòng)條在列表框容納不下項(xiàng)目時(shí)會(huì)自動(dòng)出現(xiàn)。

listIndex

它是一個(gè)只讀屬性,用于設(shè)置或返回當(dāng)前選定項(xiàng)目的索引值。

ListCount

它是一個(gè)只讀屬性,用于返回列框中項(xiàng)目的數(shù)量

 Sorted

該屬性為True時(shí),可以將列表項(xiàng)目按字母順序排列。

Selected

在程序運(yùn)行時(shí)選中列表框中的選項(xiàng)。

 

7.組合框(ComboBox)控件

組合框(ComboBox)與列表框(ListBox)的功能基本相同,只是組合框允許用戶輸入未出現(xiàn)在指定項(xiàng)目中的項(xiàng)目,并可以將選項(xiàng)折疊起來,以節(jié)省控件占用空間

8.滾動(dòng)條(Hscrollbar和VScrollbor)控件

水平滾動(dòng)條(HScrollbar)和垂直滾動(dòng)條(VScrollbor)通常被用作獨(dú)立的輸入控件,連續(xù)地調(diào)整數(shù)據(jù)。

                                          滾動(dòng)條控件的屬性

屬 性

說 明

LargeChange

該屬性值決定當(dāng)用戶單擊滾動(dòng)條時(shí),定位紐幾個(gè)單位

SmallChange

該屬性的值決定當(dāng)前用戶單擊滾動(dòng)條兩端的箭頭時(shí),定位紐幾個(gè)單位

Value

該屬性值決定滾動(dòng)條的當(dāng)前值(是一個(gè)整數(shù))

Max 、Min

這兩個(gè)屬性決定Value的最大值和最小值

 

9.框架(Frame)控件

Frame控件的主要作用是作為容器安放其它控件對(duì)象,將這些控件對(duì)象分成可標(biāo)識(shí)的控件組。

                                         框架控件的屬性

屬 性

說 明

Caption

設(shè)置框架的標(biāo)題,通常用來說明組名稱

Font

設(shè)置框架標(biāo)題的字體

ForeColor

設(shè)置標(biāo)題文字的顏色

Enabled

設(shè)置框架是否可用。若設(shè)為False,框架的標(biāo)題將灰色顯示,且框架中其它控件同時(shí)被禁用。

 

10.圖片框(PictureBox)控件

                                        圖片框控件的主要屬性

屬 性

說 明

AutoSize

該屬性設(shè)為Ture時(shí),圖片框能自動(dòng)調(diào)整大小與顯示的圖片匹配。

Align

該屬性設(shè)為1、2、3、4 時(shí)作為容器的圖片框?qū)⒄迟N到窗體的四周。

AutoRedraw

該屬性設(shè)為Ture后可以將圖形方法的輸出顯示到控件上,并在調(diào)整圖片框大小或移去遮擋圖片框的對(duì)象時(shí),自動(dòng)重繪輸出的圖片。

 

11.圖像框(Image)控件

                                     圖像框控件的屬性

屬 性

說 明

Stretch

該屬性設(shè)為Ture時(shí)可以使圖片自動(dòng)擴(kuò)展以適應(yīng)控件的尺寸,該屬性為False時(shí)控件自動(dòng)調(diào)整大小。

 

PictureBox和Image控件均可以用來顯示圖像,支持的圖像文件格式有:位圖、圖標(biāo)、圖元文件、增強(qiáng)型圖元文件、JPEG和GIF文件。

PictureBox和Image控件的主要區(qū)別為:

1.PictureBox除了可以顯示圖形以外,還可以作為其它控件的容器。用戶可以通過剪貼板給PictureBox添加圖形。它不能延伸圖形以適應(yīng)控件的大小,但可以自動(dòng)調(diào)整控件的大小以顯示完整的圖形。

2.Image控件只能用于顯示圖片,可以延伸圖片的大小以適應(yīng)控件的大小。但支持的屬性、事件、和方法較PictureBox少一些。

12.計(jì)時(shí)器(Timer)控件

計(jì)時(shí)器(Timer)控件可用于實(shí)現(xiàn)每隔一定的時(shí)間間隔執(zhí)行指定的操作,運(yùn)行時(shí)不可見,所以在設(shè)計(jì)時(shí)可以將其畫在窗體的任何位置上。

                                        計(jì)時(shí)器控件的屬性

屬 性

說 明

Enanled

該屬性為True時(shí),計(jì)時(shí)器開始工作,為False時(shí)暫停。

Interval

該屬性用來設(shè)置計(jì)時(shí)器觸發(fā)的周期,以毫秒計(jì),取值范圍為0~64767。

 

第六章  工程與程序管理

一、 基本要求

1.掌握工程、工程文件的概念以及工程文件的組成。

工程是構(gòu)成應(yīng)用程序文件的集合。

工程文件是與工程相關(guān)聯(lián)的所有文件和對(duì)象以及所設(shè)置的環(huán)境信息的一個(gè)簡(jiǎn)單的列表,所有文件和對(duì)象也可以被其它的工程所共享。工程文件的擴(kuò)展名是.vbp,可以將幾個(gè)工程.vbp文件組成一個(gè)工程組.vbg文件。

工程文件通常由三類模塊組成,即窗體模塊、標(biāo)準(zhǔn)模塊和類模塊。

2.掌握創(chuàng)建、打開、使用和保存工程的方法。會(huì)添加、刪除和保存工程文件,設(shè)置工程屬性。

3.掌握在工程中添加和刪除控件的方法

在 Visual Basic中,可以同時(shí)打開多個(gè)工程。在建造和測(cè)試有關(guān)用戶創(chuàng)建的控件時(shí),這種功能很有用。在裝入了多個(gè)工程時(shí),【工程資源管理器】窗口的標(biāo)題將變成"工程組",而所有打開的工程部件都會(huì)顯示出來。

 

第七章  VB應(yīng)用程序結(jié)構(gòu)

一、基本要求

1.理解VB中三種類型的模塊:窗體模塊、標(biāo)準(zhǔn)模塊和類模塊。

在建立VB應(yīng)用程序時(shí),應(yīng)該首先設(shè)計(jì)代碼的結(jié)構(gòu)。VB將代碼存儲(chǔ)在3種不同的模塊中:窗體模塊、標(biāo)準(zhǔn)模塊和類模塊。在這三種模塊中都可以包含:聲明和過程,它們形成了工程的一種模塊層次結(jié)構(gòu),可以較好地組織工程。

(1)窗體模塊

窗體模塊包含窗體和代碼兩部分,窗體部分就是程序運(yùn)行的界面各種元素及其屬性,代碼部分包括通用過程和窗體上各種對(duì)象的事件過程。窗體模塊保存在擴(kuò)展名為.frm的文件中。

(2)標(biāo)準(zhǔn)模塊

標(biāo)準(zhǔn)模塊完全由代碼組成,這些代碼不與具體的對(duì)象相關(guān)聯(lián),一般用來定義全局變量和公用過程和函數(shù)。標(biāo)準(zhǔn)模塊保存在擴(kuò)展名為.bas的文件中,缺省時(shí)應(yīng)用程序不包含標(biāo)準(zhǔn)模塊。

(3)類模塊

類模塊的文件擴(kuò)展名.cls。在類模塊中可以建立新對(duì)象,這些新對(duì)象可以包含自定義的屬性和方法,可以在應(yīng)用程序內(nèi)的過程中使用。類模塊與標(biāo)準(zhǔn)模塊的不同之處在于:標(biāo)準(zhǔn)模塊僅僅含有代碼,而類模塊既含有代碼又含有數(shù)據(jù)。

2.掌握Sub過程、事件過程、通用過程、Function 過程的含義。

過程:一個(gè)應(yīng)用程序是由若干模塊組成的,而每個(gè)模塊又是由若干個(gè)更小的代碼片段組成,將組成這些模塊的代碼片段稱為過程(Procedure)。

子過程:子過程是在響應(yīng)事件時(shí)執(zhí)行的程序段。

在VB中有三種過程:Sub(子)過程、Function(函數(shù))過程和Property(屬性)過程。

(1)Sub過程

Sub過程是沒有返回值的一段程序代碼,可以是模塊中相對(duì)獨(dú)立的一個(gè)結(jié)構(gòu)。Sub過程又稱子過程。

Sub過程的語(yǔ)法如下:

Private?Public?Friend?Static?Sub 過程名[(參數(shù)表)]

    [程序段]

    [Exit Sub]

    [程序段]

End Sub

在VB中,有兩類子(Sub)過程:事件過程和通用過程。

事件過程:是在響應(yīng)事件時(shí)執(zhí)行的代碼塊。事件過程是由VB自動(dòng)給出的,如

 Private Sub Form_Click()

    語(yǔ)句組

End Sub

通用過程:是指分離的、相對(duì)獨(dú)立的子過程,通常用來完成某一功能,被其它過程調(diào)用。通用過程由用戶自己創(chuàng)建。在一個(gè)過程中,通用過程可以被其他過程調(diào)用。

調(diào)用Sub過程

定義好一個(gè)Sub過程之后,要讓其執(zhí)行,則必須使用Call語(yǔ)句調(diào)用該過程,有兩種方法:

①<過程名>(<實(shí)參表>)如:Call MyProc (FirstArgument, SecondArgument)

②<過程名>(<實(shí)參表>)   如:MyProc FirstArgument, SecondArgument

注意:當(dāng)使用 Call 語(yǔ)法時(shí),參數(shù)必須在括號(hào)內(nèi)。若省略 Call 關(guān)鍵字,則也必須省略參數(shù)兩邊的括號(hào)。

(2)Function 過程

Function 過程是具有返回值的一段程序代碼,可以是模塊中相對(duì)獨(dú)立的一個(gè)結(jié)構(gòu)。Function 過程通常又稱為函數(shù)。

Function過程的語(yǔ)法如下:

    Private?Public?Friend?Static?Function Name[(Arglist)] [As數(shù)據(jù)類型]

    [程序段]

    [Name=Expression]

    [Exit Function]

    [程序段]

    [Name=Expression]

End Function

與Sub過程一樣,F(xiàn)unction過程也是一個(gè)獨(dú)立的過程,可讀取參數(shù),執(zhí)行一系列語(yǔ)句并改變其參數(shù)的值。與子過程不同的是,F(xiàn)unction過程可返回一個(gè)值到調(diào)用的過程。

調(diào)用Function過程

 調(diào)用一個(gè)Function過程的方法和調(diào)用內(nèi)部函數(shù)的方法相似,只要在表達(dá)式中通過使用函數(shù)名,并在其后用圓括號(hào)給出相應(yīng)的參數(shù)列表即可。

二、例題解析

例1.編寫一個(gè)Sub過程,計(jì)算N個(gè)數(shù)的和,即1+2+…+N,并通過命令按紐的單擊事件調(diào)用該過程計(jì)算S=1+(1+2)+(1+2+3)+…+(1+2+3+…+K)。

分析:用Sub過程計(jì)算1+2+…+N,首先需要設(shè)置參數(shù)N,另外需要引入一個(gè)參數(shù)S,用于返回該和值。程序如下:

Public Sub A1(N As Integer, S As Long)

     S = 0

    For J = 1 To N

     S = S + J

    Next J

End Sub

Private Sub Command1_()

    Dim K As Integer, S1 As Integer, I As Integer

    K = Val(Text1.Text)

    For I = 1 To K

    Call A1(I, S1)       '調(diào)用過程A1求1+2+…+I,和值返回到S1中

    Sum = Sum + S1

    Next I

    Text2.Text = Sum

End Sub

例2.從鍵盤上任意輸入一個(gè)整數(shù),然后調(diào)用一個(gè)計(jì)算n!的Function過程計(jì)算其階乘數(shù)。使用文本框輸入數(shù)據(jù),用標(biāo)簽輸出數(shù)據(jù)。設(shè)計(jì)界面和運(yùn)行界面如下所示:

 

代碼如下:

Option Explicit

Function Fact(N As Integer) As Long

     Dim I As Integer, F As Long

     F = 1

     For I = 1 To N

     F = F * I

     Next I

     Fact = F          '給函數(shù)過程名賦值

End Function

Private Sub Command1_Click()

    Dim X As Integer

    X = Val(Text1.Text)

    Label2.Caption = Trim(Str(X)) & "的階乘數(shù)為:"

    Label3.Caption = Trim(Str(Fact(X)))    '使用Fact(X)調(diào)用函數(shù)過程

End Sub

 

第八章 菜單程序設(shè)計(jì)

一、 基本要求

1.掌握菜單編輯器的使用,能通過菜單的代碼設(shè)計(jì)修改菜單。掌握菜單的有效屬性、可見屬性、復(fù)選屬性的用法,會(huì)創(chuàng)建動(dòng)態(tài)菜單和菜單控件數(shù)組。

2.理解彈出菜單、分隔條和工具欄的設(shè)計(jì)

二、練習(xí)題

1.菜單分為_________菜單和_________菜單,菜單總與____________相關(guān)連,設(shè)計(jì)菜單需要在____________中設(shè)計(jì)。

2.不可以給____________級(jí)菜單設(shè)置快捷鍵。

3.菜單控件只包含一個(gè)____________事件。

4.菜單編輯器的"標(biāo)題"選項(xiàng)對(duì)應(yīng)于菜單控件的____________屬性。

菜單編輯器的"名稱"框?qū)?yīng)于菜單控件的____________屬性。

菜單編輯器的"索引"選項(xiàng)對(duì)應(yīng)于菜單控件的____________屬性。

菜單編輯器的"復(fù)選"選項(xiàng)對(duì)應(yīng)于菜單控件的____________屬性。

菜單編輯器的"有效"選項(xiàng)對(duì)應(yīng)于菜單控件的____________屬性。

菜單編輯器的"可見"選項(xiàng)對(duì)應(yīng)于菜單控件的____________屬性。

5.要在菜單中建立分隔條,應(yīng)在菜單編輯器的___________選項(xiàng)中鍵入一個(gè)_____符號(hào)。

6.為了能夠通過鍵盤訪問主菜單項(xiàng),可在菜單編輯器的"標(biāo)題"選項(xiàng)中的某字母前插入符號(hào)_______。運(yùn)行時(shí),該字母會(huì)帶有下劃線,按Alt鍵和該字母就可以訪問相應(yīng)的主菜單項(xiàng)。

7.每次單擊菜單編輯器中的"?"按紐可以使選定的菜單項(xiàng)_________________。

8.為顯示彈出式菜單,可以使用______________方法。

9.彈出式菜單在___________中設(shè)計(jì),且一定要使其___________級(jí)菜單不可見。

10.要使用工具欄控件設(shè)計(jì)工具欄,應(yīng)首先在"部件"對(duì)話框中選擇________________,然后從工具箱中選擇___________控件。

11.設(shè)置工具欄控件的___________屬性可以改變工具欄在在窗體上的位置。

12.要給工具欄按紐添加圖像,應(yīng)首先在___________控件中添加所需要的圖像,然后在工具欄的屬性頁(yè)中選擇與該控件相關(guān)聯(lián)。

13.要使用狀態(tài)欄控件設(shè)計(jì)狀態(tài)欄,應(yīng)首先在"部件"對(duì)話框中選擇________________,然后從工具箱中選擇___________控件。

14.在打開一個(gè)自定義對(duì)話框時(shí),可以使用_______方法來決定對(duì)話框窗體的顯示模式。

15.用戶可以通過設(shè)置菜單項(xiàng)的___________屬性值為False來使該菜單不可見。

 答案:

 1.下拉式 彈出式 窗體 菜單編輯器

 2.頂

 3.Click

 4.Caption Name Index Checked Enabled Visible

 5.標(biāo)題

  6.&

 7.向下移一個(gè)等級(jí)

 8.PopupMenuu

  9.菜單編輯器 頂

 10.Microsoft Windows Common Controls6.0 ToolBar

  11.Align

 13.Microsoft Windows Common Controls6.0 StatusBar

 14.Show

  15.Visible

 

第九章 應(yīng)用程序窗體設(shè)計(jì)

一、 基本要求

1.會(huì)利用ActiveX控件進(jìn)行窗體的界面設(shè)計(jì)(見9.1節(jié))。

2.掌握多窗體程序設(shè)計(jì)常用的方法(Load方法、Show方法、Hide方法和Unload方法)

多窗體是指應(yīng)用中有多個(gè)窗口界面,這些窗口分別顯示在屏幕上,它們之間沒有絕對(duì)的從屬關(guān)系。當(dāng)然,窗口之間存在著出現(xiàn)的先后順序和相互調(diào)用的關(guān)系。在多重窗體中每個(gè)單獨(dú)的窗體都依照應(yīng)用功能分類進(jìn)行設(shè)計(jì),所以整個(gè)程序的功能會(huì)更加協(xié)調(diào),相互之間的邏輯關(guān)系更加容易為用戶理解的方式體現(xiàn)出來。

一般說來,多窗體的設(shè)計(jì)的基本方法分成以下幾個(gè)步驟:

S1:分析應(yīng)用要求,將其功能劃分為不同的幾部分;

S2:分別創(chuàng)建各個(gè)窗體、模塊;

S3:在創(chuàng)建窗體時(shí),除各窗體自身要完成的功能外,還要考慮窗體之間的調(diào)用關(guān)系;

S4:點(diǎn)擊【工程】/【屬性】菜單,在【啟動(dòng)對(duì)象】中選擇應(yīng)用運(yùn)行時(shí)首先執(zhí)行的對(duì)象;

S5:運(yùn)行應(yīng)用程序,檢驗(yàn)應(yīng)用及各窗體的運(yùn)行情況。

在多窗體的程序設(shè)計(jì)中經(jīng)常要用到下面四種方法:Load方法、Show方法、Hide方法和Unload方法。詳細(xì)參見9.2.1節(jié)。

3.理解多文檔界面(MDI)的概念。

多文檔界面(Multiple Document Interface)是指在一個(gè)父窗口下面可以同時(shí)打開多個(gè)子窗口。子窗口歸屬與父窗口,如果父窗口關(guān)閉,則所有子窗口全部關(guān)閉。

4.理解MDI應(yīng)用程序中的菜單設(shè)計(jì)。

在 MDI 應(yīng)用程序中,每一個(gè)子窗體的菜單都顯示在 MDI 窗體上,而不是在子窗體本身。當(dāng)子窗體有焦點(diǎn)時(shí),該子窗體的菜單(如果有的話)就代替菜單欄上的 MDI 窗體的菜單。如果沒有可見的子窗體,或者如果帶有焦點(diǎn)的子窗體沒有菜單,則顯示 MDI 窗體的菜單。詳見9.3.2節(jié)

二、練習(xí)題

1.MDI是指________________________________界面。

2.要將某窗體定義為一個(gè)MDI子窗體,需要將其,需要將其________屬性設(shè)置為True。

3.一個(gè)應(yīng)用程序最多可以有__________個(gè)MDI父窗體。

4.在運(yùn)行時(shí),MDI父窗體中的子窗體最小化時(shí),其圖標(biāo)將顯示在__________中。

5.WindowList屬性只應(yīng)用于MDI窗體和MDI子窗體,它對(duì)__________窗體不起作用。

6.使用Load 方法調(diào)用的窗體被__________,并顯示出來,同時(shí)會(huì)產(chǎn)生一個(gè)____________________事件。

7.使用Show方法會(huì)顯示被調(diào)用的窗體如果在調(diào)用Show方法之前沒有把窗體調(diào)入內(nèi)存,那么調(diào)用Show方法會(huì)____________________。

8.使用Hide方法會(huì)隱藏被調(diào)用的窗體,但是在調(diào)用Hide方法之后不會(huì)把窗體____________________,被調(diào)用的窗體中的屬性等已處于__________。

9.使用Unload方法會(huì)從內(nèi)存中__________被調(diào)用的窗體,同時(shí),窗體中的變量和屬性等都會(huì)處于__________,在移去窗體的同時(shí)會(huì)產(chǎn)生一個(gè)____________________事件。

10.當(dāng)MDI窗體的NegotiateToolbars屬性設(shè)為True,則對(duì)象的工具欄出現(xiàn)在____________________上,如果NegotiateToolbars屬性設(shè)為False,則對(duì)象的工具欄就為____________________。

練習(xí)題答案:

1.多文檔

2.MDIChild

3.1

4.MDI父窗體

5.標(biāo)準(zhǔn)

6.存入內(nèi)存 Form_Load()

7.自動(dòng)地把窗體調(diào)入內(nèi)存

8.移出內(nèi)存 無效狀態(tài)

9.移去 Form_QueryUnload()

10.MDI父窗體 不固定的調(diào)色板

 

第十章 文件處理

一、 基本要求

1.掌握DriveListBox控件、DirListBox控件、FileListBox控件和CommDialog控件,會(huì)利用這些文件控件來設(shè)計(jì)程序。

DriveListBox(驅(qū)動(dòng)器列表框):其常用事件為Change。當(dāng)選擇一個(gè)新的驅(qū)動(dòng)器或通過代碼改變Drive屬性的設(shè)置時(shí)觸發(fā)該事件。

DirListBox(目錄列表框):通過顯示一個(gè)樹型的目錄來列出當(dāng)前驅(qū)動(dòng)器下的分層目錄,當(dāng)用鼠標(biāo)雙擊某一目錄時(shí),將打開該目錄并顯示其子目錄。目錄列表框的常用事件為Change事件,當(dāng)雙擊一個(gè)目錄項(xiàng)或通過代碼改變Path屬性的設(shè)置時(shí)觸發(fā)該事件。

FileListBox(文件列表框):文件列表框是一個(gè)帶滾動(dòng)條的列表框,用來顯示特定目錄下的文件。當(dāng)用戶單擊或雙擊文件列表框中的文件時(shí),激活Click事件或DbClick事件。

CommDialog(公共對(duì)話框控件):其功能是提供一組標(biāo)準(zhǔn)的操作對(duì)話框,可以使用它進(jìn)行打開和保存文件、設(shè)置打印機(jī)選項(xiàng)等。

2.掌握KillFileCopy、RmDir、ShellName語(yǔ)句的功能和用法。

Kill語(yǔ)句的功能是從磁盤中刪除文件,其語(yǔ)法結(jié)構(gòu)為:Kill pathname

FileCopy語(yǔ)句的功能是復(fù)制一個(gè)文件,其語(yǔ)法結(jié)構(gòu)為:FileCopy source,destination

RmDir語(yǔ)句的功能是刪除一個(gè)存在的而且為空的的目錄或文件夾,其語(yǔ)法結(jié)構(gòu)為:

RmDir path

Shell語(yǔ)句的功能是執(zhí)行一個(gè)可執(zhí)行文件,同時(shí)返回一個(gè)Variant,若成功,則代表這個(gè)程序的任務(wù)ID,若不成功,則返回零。其語(yǔ)法結(jié)構(gòu)為:Shell(pathname[,windowstyle])

Name語(yǔ)句功能是重新命名一個(gè)文件、目錄或文件夾,其語(yǔ)法結(jié)構(gòu)為:

Name oldpathname As newpathname

3.理解文件系統(tǒng)的分類、順序文件、隨機(jī)文件、二進(jìn)制文件、文件系統(tǒng)對(duì)象的概念。

文件的分類

按照文件的存取方式及其組成結(jié)構(gòu)可以分為兩種類型:順序文件、隨機(jī)文件;

按照文件的數(shù)據(jù)編碼方式來分可以分為ASCII碼文件和二進(jìn)制文件;

按照文件的特征屬性來分可以分為系統(tǒng)文件、隱藏文件、只讀文件、普通文件和存檔文件;

按照文件的數(shù)據(jù)性質(zhì)來分可以分為程序文件和數(shù)據(jù)文件。

順序文件:通常指的是普通的文本文件,文件中的字符包括文本字符及控制字符,如","(Chr(14))、換行符"CR,LF"、"Chr(13))"、"Chr(10)"等。數(shù)據(jù)是以ANSI代碼保存。它是一條條記錄按照順序進(jìn)行存放,每條記錄的長(zhǎng)度可以按照實(shí)際的需要變化。

由于這類文件的信息是按照順序從頭到尾按順序排列,而且只提供第一條記錄的存儲(chǔ)位置,所以對(duì)其中的數(shù)據(jù)信息進(jìn)行處理是相當(dāng)困難的。

所以一般的順序文件只用于要求少量空間,不經(jīng)常進(jìn)行數(shù)據(jù)修改的有規(guī)律的文件。 參見10.4.1節(jié)。

隨機(jī)文件: 隨機(jī)存取設(shè)置在存取相同長(zhǎng)度的數(shù)據(jù)記錄,每一數(shù)據(jù)記錄內(nèi)可以設(shè)計(jì)各種欄位以容納不同的數(shù)據(jù)。此種文件數(shù)據(jù)是以二進(jìn)制的位的形式保存在磁盤上。 參見10.4.2節(jié)。

二進(jìn)制文件: 二進(jìn)制文件與隨機(jī)文件類似,唯一不同是不必限制于固定長(zhǎng)度,你可以用喜歡的方式來存取文件。 參見10.4.3節(jié)。

4.了解文件系統(tǒng)對(duì)象編程。

FSO 對(duì)象模型編程包括三項(xiàng)主要任務(wù):

(1)使用CreateObject 方法,或?qū)⒁粋€(gè)變量聲明為 FileSystemObject 對(duì)象類型來創(chuàng)建一個(gè) FileSystemObject 對(duì)象。

(2)對(duì)新創(chuàng)建的對(duì)象使用適當(dāng)?shù)姆椒ā?/p>

(3)訪問該對(duì)象的屬性。

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多