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

分享

第二篇 應(yīng)用環(huán)境

 nxhujiee 2010-09-08

VB環(huán)境應(yīng)用

實(shí)驗(yàn)題目:

熟悉VB環(huán)境

實(shí)驗(yàn)?zāi)康?/span>:

1.掌握VB6.0的啟動(dòng)與退出。

2.了解VB6.0的集成開發(fā)環(huán)境,熟悉各主要窗口的作用。

3.了解VB6.0應(yīng)用程序的開發(fā)過(guò)程。

4.理解VB中對(duì)象的概念。

5.掌握在VB6.0中使用幫助的方法。

實(shí)驗(yàn)指導(dǎo)

進(jìn)入VB可視化集成開發(fā)環(huán)境后,將出現(xiàn)一個(gè)新建工程窗口,如果選取【標(biāo)準(zhǔn)EXE】,則會(huì)出現(xiàn)如圖2.1所示界面,這就是編程環(huán)境。

在屏幕上邊橫欄為菜單欄包括程序開發(fā)過(guò)程中需要的命令。在屏幕左邊為工具箱窗口,它提供用于開發(fā)VB應(yīng)用程序的各種控件。屏幕中間位置為窗體,它是用戶的工作區(qū),是生成應(yīng)用程序的編輯窗口,是放置其他控件的一個(gè)容器。一個(gè)程序可以有多個(gè)窗體,但它們必須有不同的名字,以免運(yùn)行時(shí)發(fā)生錯(cuò)誤。默認(rèn)狀態(tài)下窗體分別以Form1 ,Form2, Form3,……命名,程序員也可以創(chuàng)建新名字。屏幕右下邊為屬性窗口,所有窗體或控件的屬性都可以通過(guò)屬性窗口來(lái)修改。

 

 
 

 

 

 

 

 

 

 

 

 

 

 

 


2.1  VB 6.0集成開發(fā)環(huán)境

屏幕右邊中上位置為工程資源管理器窗口,采用層次結(jié)構(gòu)列出組成這個(gè)工程的所有文件。另外還有幾個(gè)隱藏的窗口,分別是調(diào)色板窗口、代碼窗口、調(diào)試窗口、對(duì)象瀏覽器窗口和菜單編輯窗口??梢赃M(jìn)行程序設(shè)計(jì)、編輯、編譯和調(diào)試等。

利用VB的開發(fā)環(huán)境和開發(fā)工具,用戶可以輕松地開發(fā)出具有一定功能的Windows應(yīng)用程序。應(yīng)用程序設(shè)計(jì)設(shè)計(jì)階段4個(gè)步驟1建立應(yīng)用程序界面(2)設(shè)置界面對(duì)象屬性3編寫代碼4保存文件,注意在保存文件時(shí)與當(dāng)前工程相關(guān)的所有的窗體文件、模塊文件等都要保存,否則工程遷移的時(shí)候就會(huì)運(yùn)行不正常。當(dāng)設(shè)計(jì)工作完成后,運(yùn)行程序看程序設(shè)計(jì)是否實(shí)現(xiàn)了預(yù)期的目標(biāo)。當(dāng)程序運(yùn)行正常后,應(yīng)該再一次存盤,保存該工程文件。最后我們可以根據(jù)需要把程序制作成可以獨(dú)立運(yùn)行的.EXE文件。這個(gè)應(yīng)用程序可脫離VB 6.0中文版環(huán)境單獨(dú)運(yùn)行。

實(shí)驗(yàn)內(nèi)容

1.練習(xí)Visual Basic 6.0的啟動(dòng)與退出。

2.熟悉Visual Basic 6.0的集成開發(fā)環(huán)境,了解各主要窗口的作用。

3.創(chuàng)建一個(gè)簡(jiǎn)單的VB應(yīng)用程序,要求在窗體上顯示“歡迎進(jìn)入Visual Basic 6.0

4.練習(xí)在Visual Basic 6.0中使用幫助的各種方法。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

實(shí)驗(yàn)二  Visual Basic語(yǔ)言基礎(chǔ)

實(shí)驗(yàn)題目:

熟悉VB繼承環(huán)境

實(shí)驗(yàn)?zāi)康模?/span>

⒈ 掌握Visual Basic的數(shù)據(jù)類型和變量定義方法;

    ⒉ 正確使用Visual Basic的運(yùn)算符和表達(dá)式;

    ⒊ 掌握Visual Basic中數(shù)據(jù)輸入、輸出的方法;

    ⒋ 掌握Visual Basic 常用函數(shù)的使用方法;

    ⒌ 學(xué)會(huì)用賦值語(yǔ)句構(gòu)造簡(jiǎn)單的順序結(jié)構(gòu)程序。

實(shí)驗(yàn)指導(dǎo)

查看教材上標(biāo)識(shí)符命名規(guī)則、運(yùn)算符、變量、常量等相關(guān)內(nèi)容,正確使用運(yùn)算符、常量和變量。

實(shí)驗(yàn)內(nèi)容:

    1.在窗體上顯示下列表達(dá)式的值(設(shè)Amt變量為字符型,值為"a"Bmt變量為整型,其值為3)。

        Bmt3         Bmt+23       - Bmt       Bmt-12 

Bmt*Bmt      10/Bmt       10\Bmt      9 Mod Bmt

Amt & Bmt        Amt > Bmt

    2. 在窗體上顯示下列函數(shù)的運(yùn)行結(jié)果。

        cos45°                      e3                   |-5|

        ④ 字符"b"對(duì)應(yīng)的ASCII碼值      ⑤ 系統(tǒng)日期和系統(tǒng)時(shí)間

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

實(shí)驗(yàn)三  VB的三種控制結(jié)構(gòu)程序設(shè)計(jì)

實(shí)驗(yàn)題目:

實(shí)踐VB的三種控制結(jié)構(gòu)

實(shí)驗(yàn)?zāi)康模?/span>

1.  掌握VB中三種控制結(jié)構(gòu)語(yǔ)句的使用

實(shí)驗(yàn)指導(dǎo)

VB中基本語(yǔ)句:

1.  賦值語(yǔ)句

VB中賦值語(yǔ)句有兩種:

(1)    對(duì)普通變量的賦值:變量=表達(dá)式

如:Dim a As Integer
a=100*20

(2) 對(duì)對(duì)象變量的賦值:Set 變量=表達(dá)式
如:Dim ex As DataBase
    Set  ex=OpenDataBase("File.mdb")

2.  If語(yǔ)句

    If語(yǔ)句用于測(cè)試條件,根據(jù)測(cè)試結(jié)果執(zhí)行不同的操作。格式如下:
If
表達(dá)式 Then
語(yǔ)句
Else
語(yǔ)句
End If
或:
If
表達(dá)式 Then 語(yǔ)句1:語(yǔ)句2: ..

3.  Select Case語(yǔ)句

Select Case 語(yǔ)句用于對(duì)某一表達(dá)式的值進(jìn)行多種處理。格式如下:
Select Case
表達(dá)式
Case
1
語(yǔ)句
Case
2
語(yǔ)句
Case Else
語(yǔ)句
End Select

4.  For循環(huán)語(yǔ)句

   For...Next用于指定次數(shù)的循環(huán)。格式有兩種:
1)普通的數(shù)字變量:
     For var=start To end[Step step]
        
語(yǔ)句
     Next var
2)集合中的對(duì)象:
     For Each obj In objs
        
語(yǔ)句
     Next obj
其中:obj 是對(duì)象變量。 Objs 是集合變量。

5.  Do 循環(huán)語(yǔ)句

  根據(jù)某一條件來(lái)決定是否循環(huán)時(shí)我們使用Do循環(huán)。Do 循環(huán)有兩種:
1)當(dāng)型循環(huán)(先判斷后執(zhí)行)
     Do While|Until
條件
        
語(yǔ)句
     Loop

2)直按型循環(huán)(先執(zhí)行后判斷)
Do
  
語(yǔ)句
Loop While|Until
條件
[
]While 當(dāng)條件為 True 時(shí)循環(huán)。 Until 當(dāng)條件為 True 時(shí)退出。

6.  With語(yǔ)句

當(dāng)我們經(jīng)常使用某一對(duì)象的屬性、方法時(shí),就可以使用With語(yǔ)句。With語(yǔ)句可以使代碼更簡(jiǎn)捷,

并能提高運(yùn)行速度。格式如下:

With 對(duì)象變量

語(yǔ)句

End With

例如:With Text1
                     .SelStart=0
                     .SeiLength=Len(.Text)
                     .SetFocus
                  End With

實(shí)驗(yàn)內(nèi)容

    1.設(shè)圓半徑r=1.5,圓柱高h=3,求圓周長(zhǎng)、圓面積、圓球表面積、圓球體積及圓柱體積。用InputBox函數(shù)輸入數(shù)據(jù),結(jié)果在文本框中輸出。請(qǐng)編寫程序。

    2.公用電話收費(fèi)標(biāo)準(zhǔn)如下:通話時(shí)間在3分鐘以內(nèi),收費(fèi)0.5元;3分鐘以上,則每超過(guò)1分鐘加收0.15元。編寫一段程序,計(jì)算某人通話S分鐘,應(yīng)繳多少電話費(fèi)。

3.求 (即1!+2!+3!+...+10!

實(shí)驗(yàn)四  數(shù)組和字符串的使用

實(shí)驗(yàn)題目:

VB環(huán)境中操作數(shù)組和字符串

實(shí)驗(yàn)?zāi)康?/span>

    1.掌握數(shù)組的聲明和數(shù)組元素的引用;

    2. 掌握固定數(shù)組和動(dòng)態(tài)數(shù)組的使用方法;

3. 學(xué)會(huì)利用數(shù)組解決一些較為復(fù)雜的問(wèn)題。

4. 熟悉字符串變量和字符串?dāng)?shù)組的定義和引用;

    5. 學(xué)會(huì)常用字符串函數(shù)的使用方法;

6. 學(xué)會(huì)字符串的基本操作。

實(shí)驗(yàn)指導(dǎo):

1、數(shù)組

靜態(tài)數(shù)組的定義的定義格式如下:

Dim  數(shù)組名([lower To ] upper[[lower To ] upper])[As type]

帶有空括號(hào)的Dim可以聲明一個(gè)動(dòng)態(tài)數(shù)組,例如:

Dim dynArray()

在需要指定數(shù)組大小時(shí),再用ReDim語(yǔ)句定義動(dòng)態(tài)數(shù)組的維數(shù)和元素個(gè)數(shù)。申請(qǐng)或重申請(qǐng)存儲(chǔ)空間的一般格式為:

ReDim [Preserve ]數(shù)組名([lower To]upper [,[lower To]upper])[As Type]

其中,Preserve為可選項(xiàng),表示是否保護(hù)己有數(shù)據(jù)。缺省時(shí)為不保護(hù)。數(shù)組名后括號(hào)中的數(shù)字是為數(shù)組分配的實(shí)際元素個(gè)數(shù)(數(shù)組長(zhǎng)度)-1。

2、字符串操作常用函數(shù)

·Left$(字符串,個(gè)數(shù)):取出字符串左邊指定個(gè)數(shù)的字符,若個(gè)數(shù)大于或等于字符串長(zhǎng)度,則全取。

·Right$(字符串,個(gè)數(shù)):取出字符串右邊指定個(gè)數(shù)的字符,若個(gè)數(shù)大于或等于字符串長(zhǎng)度,則全取。

·Mid$(字符串,起始位置[,個(gè)數(shù)]):取出字符串由起始位置開始的指定個(gè)數(shù)的字符。若起始位置大于字符串長(zhǎng)度,返回0長(zhǎng)度串"",若個(gè)數(shù)為默認(rèn)值時(shí),則取出從起始位置開始的所有字符。

·Len(字符串或字符串變量):計(jì)算字符串長(zhǎng)度,若字符串為空時(shí),返回Null。該函數(shù)不能確定用自定義類型聲明的變長(zhǎng)字符串的實(shí)際存儲(chǔ)字節(jié)長(zhǎng)度。

·UCase$(字符串):將字符串的小寫字母轉(zhuǎn)換為大寫字母,其他字符不變。若字符串為Null時(shí),返回Null。

·LCase$(字符串):將字符串的大寫字母轉(zhuǎn)換為小寫字母,其他字符不變。若字符串為Null時(shí),返回Null。

·Space$(個(gè)數(shù)):返回指定個(gè)數(shù)的空字符串。

·String(個(gè)數(shù),字符) 返回包含重復(fù)字符的字符串,長(zhǎng)度由"個(gè)數(shù)"指定,重復(fù)字符由"字符"指定,當(dāng)"字符"為串時(shí),用串的第一個(gè)字符。

·StrComp(字符串1,字符串2[,比較類型]):按比較類型比較兩個(gè)字符串,返回值為:相等時(shí)為0;小于時(shí)為 –1;大于時(shí)為 1。

·StrReverse(字符串):將給定字符串逆序輸出。若為空串,返回空串,若為Null,則會(huì)出錯(cuò)。

實(shí)驗(yàn)內(nèi)容


    1.輸入整數(shù)n,顯示出具有n行的楊輝三角形。一個(gè)具有10行的楊輝三角形運(yùn)行結(jié)果如圖所示。

提示:利用TAB函數(shù)定位每行顯示的起始位置。為了便于顯示,可將顯示內(nèi)容放在圖形框中(PictureBox)。

2.編寫一段程序,對(duì)輸入的字符串進(jìn)行識(shí)別,找出其中大寫字母、小寫字母、空格、數(shù)字及其它字符的個(gè)數(shù),并按圖示的樣式輸出。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

實(shí)驗(yàn)五  過(guò)程和函數(shù)

實(shí)驗(yàn)題目:

VB中操作過(guò)程和函數(shù)

實(shí)驗(yàn)?zāi)康?/span>

1.  掌握子過(guò)程和函數(shù)的定義和調(diào)用方法。

2.  分清子過(guò)程和函數(shù)過(guò)程的異同。

3.  掌握遞歸概念和使用方法。

4.  掌握變量、函數(shù)和過(guò)程的作用域。

5.  掌握形參和實(shí)參的對(duì)應(yīng)關(guān)系,分清值傳遞和地址傳遞的區(qū)別

 

實(shí)驗(yàn)指導(dǎo):

過(guò)程過(guò)程(Procedure)是構(gòu)成程序的一個(gè)模塊,往往用來(lái)完成一個(gè)相對(duì)獨(dú)立的功能。過(guò)程可以使程序更清晰、更具結(jié)構(gòu)性。VB提供了四種過(guò)程:Sub 過(guò)程、Function 函數(shù)、Property 屬性過(guò)程和 Event 事件過(guò)程。

1Sub過(guò)程

1)定義Sub過(guò)程

可以在窗體或模塊的代碼窗口輸入Sub過(guò)程名,VB會(huì)自動(dòng)產(chǎn)生一個(gè)過(guò)程體,然后只需要添入相應(yīng)代碼即可。

(2對(duì)于過(guò)程的調(diào)用有兩種方式

一種調(diào)用方式是: 過(guò)程名 參數(shù)1 ,參數(shù)2,

另一種方式用Call調(diào)用: Call 過(guò)程名(參數(shù)1,參數(shù)2,…)

2 Function 函數(shù)

函數(shù)過(guò)程的定義語(yǔ)法是:

[Private |Public][Static]Function 函數(shù)過(guò)程名(參數(shù)表)[As類型]

[語(yǔ)句]

End Function

與子過(guò)程不同的是,Function過(guò)程可向調(diào)用過(guò)程返回一個(gè)值。

在調(diào)用函數(shù)時(shí)可以有兩種方式:

· 把它看成一個(gè)數(shù),即可以放在賦值號(hào)右端。

· 可直接作為參數(shù)出現(xiàn)在調(diào)用過(guò)程或函數(shù)中。

3.向過(guò)程傳遞參數(shù)

(1) 按值傳遞參數(shù)

按值傳遞參數(shù)時(shí),傳遞的只是變量的副本。如果過(guò)程改變了這個(gè)值,則所作變動(dòng)只影響副本而不會(huì)影響變量本身。用 ByVal 關(guān)鍵字指出參數(shù)是按值來(lái)傳遞的。

(2) 按地址傳遞參數(shù)

按地址傳遞參數(shù)使過(guò)程用變量的內(nèi)存地址去訪問(wèn)實(shí)際變量的內(nèi)容。結(jié)果,將變量傳遞給過(guò)程時(shí),通過(guò)過(guò)程可永遠(yuǎn)改變變量值。按地址傳遞參數(shù)在 VBasic 中是缺省的。

3)使用可選的參數(shù)

在過(guò)程的參數(shù)列表中列入 Optional 關(guān)鍵字,就可以指定過(guò)程的參數(shù)為可選的。如果指定了可選參數(shù),則參數(shù)表中此參數(shù)后面的其它參數(shù)也必是可選的,并且要用 Optional 關(guān)鍵字來(lái)聲明。

Property 屬性過(guò)程和 Event 事件過(guò)程請(qǐng)查詢相關(guān)資料。

實(shí)驗(yàn)內(nèi)容

1.編寫子過(guò)程,對(duì)于已知正整數(shù),判斷該數(shù)是否時(shí)回文數(shù)。所謂回文數(shù)是指順讀與倒讀數(shù)字相同,即最高位與最低位相同,此高位與次低位相同,依次類推。當(dāng)只有一個(gè)數(shù)時(shí),也認(rèn)為是回文。程序要求輸入一系列,每輸入一個(gè),就判斷一個(gè),并輸出所輸入的回文數(shù)。

2.編寫一個(gè)函數(shù)過(guò)程DeleSte(S1,S2),將字符串s1中出現(xiàn)的s2字符串刪除,結(jié)果還存放在s1中。例如:字符串s1="12345678AAABBDFG12345",字符串S2="234",結(jié)果為s1="15678AAABBDFG15"。

提示:

⑴ 在s1字符串中s2字符串,可利用InStr()函數(shù),考慮到s1中可能存在多個(gè)或不存在s2字符串,用Do While Instr(s1,s2)>0循環(huán)結(jié)構(gòu)來(lái)實(shí)現(xiàn)。

如果在s1中找不到s2字符串,首先要確定s1字符串的長(zhǎng)度,因s1字符串在進(jìn)行多次刪除時(shí),長(zhǎng)度在變換;然后通過(guò)Left()Right()函數(shù)的調(diào)用刪除s1中存在的s2字符串。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

實(shí)驗(yàn)六  VB的窗體

實(shí)驗(yàn)題目:

創(chuàng)建和操作窗體

實(shí)驗(yàn)?zāi)康?/span>

1.掌握VB6.0窗體的常用屬性、常用事件和重要方法。

2.掌握在Visual Basic 6.0窗體上生成控件的方法。

3.掌握設(shè)置啟動(dòng)窗體的方法。

4.了解窗體的生命周期。

實(shí)驗(yàn)指導(dǎo):

窗體的常用屬性

屬性名稱

含義

Name

用于在屬性窗口定義對(duì)象的名稱,以便在程序中引用。它只能在設(shè)計(jì)時(shí)賦值。
對(duì)于任何一個(gè)可以在屬性窗口設(shè)置其屬性的對(duì)象必須設(shè)置該屬性的值,VB自動(dòng)為每一個(gè)對(duì)象給定一個(gè)缺省值。

Captiion

屬性用于獲取、設(shè)置窗體的標(biāo)題

BorderStyle

用于設(shè)置窗體的邊框。
它常用的有兩個(gè)值:
普通窗體:可修改窗體的尺寸。
2-Sizable
對(duì)話框:不能修改窗體的尺寸。
3-FixedDialog

Top,Left,Width,Height

它們分別表示該窗體在父窗體或屏幕的位置(Top,Left)和大小(Width,Height)。

ScaleTop,ScaleLeft,

ScaleWidth,ScaleHeight

它們分別表示該窗體工作區(qū)的位置和大小

窗體的常用方法

FormX.Show[vbModal]

顯示一個(gè)窗體。
沒(méi)有vbModal表示以非模式方式顯示一個(gè)窗體。
帶有vbModal表示以模式方式顯示一個(gè)窗體。

FormX.Hide

隱藏一個(gè)窗體。隱藏窗體并不把窗體從內(nèi)存中卸載,要卸載窗體需要使用語(yǔ)句。
Unload FormX
或:UnLoad Me (Me 表示當(dāng)前窗體)

窗體的常用事件

Load 事件

當(dāng)窗體加載到內(nèi)存時(shí)發(fā)生
Private Sub Form_Load()
... '
常把初始化代碼放在此處
End Sub

Resize 事件

當(dāng)窗體改變其尺寸時(shí)發(fā)生
Private Sub Form_Resize()
... '
常在此處修改其它控件的尺寸
End Sub

Unload 事件

當(dāng)窗體從內(nèi)存卸載時(shí)發(fā)生
Private Sub Form_Unload(Cancel As Integer)
... '
在窗體卸載前做一些掃尾工作。
'
如關(guān)閉文件、提示存盤等
End Sub

[參數(shù)]Cancel 表示:是否放棄卸載。帶進(jìn)來(lái)時(shí)=0,表示可以卸載。在代碼中將其0,表示放棄卸載。

實(shí)驗(yàn)內(nèi)容

1.新建一個(gè)工程,然后分別對(duì)窗體的CaptionMaxButtonMinButton、ControlBox、Moveable、Borderstyle、Icon、ShowInTaskbar的屬性進(jìn)行設(shè)置,記錄設(shè)置后窗體的狀態(tài)和效果。

2.利用窗體的Show方法和Hide方法,顯示或隱藏窗體。

3.在一個(gè)工程中建立多個(gè)窗體,然后設(shè)置其中一個(gè)為啟動(dòng)窗體。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

實(shí)驗(yàn)七  VB的常用控件

實(shí)驗(yàn)題目:

使用VB的常用控件

實(shí)驗(yàn)?zāi)康?/span>

1.掌握標(biāo)簽、命令按鈕、文本框、單選鈕、檢查框列表框、組合框、框架、時(shí)鐘、滾動(dòng)條等控件常用屬性、重要事件和基本方法。

2.熟練掌握在窗體上創(chuàng)建上述控件的操作方法。

3.掌握事件過(guò)程的代碼編寫。

4.了解VB中的鍵盤事件、鼠標(biāo)事件和拖曳事件等過(guò)程的編寫。

實(shí)驗(yàn)指導(dǎo):

 

Label控件

Label 控件主要用于在窗體中顯示提示信息,常與Text控件一起使用。

屬性:

Caption 表示標(biāo)簽的內(nèi)容。
例:Label1.Caption="N&ame:"
控件在窗體中顯示Name:,&號(hào)跟的字母是快捷鍵字母,即當(dāng)我們按下Alt+A時(shí),Label1Click事件將會(huì)發(fā)生。
這種快捷鍵定義方法對(duì)于菜單和許多其它控件同樣適用。

Font 表示控件的字體。

ForeColor 表示控件的當(dāng)前顏色。

Enabled 表示控件是否使能。
=True
使能。
=False
禁止(控件顯示為灰色)

Visible 表示控件是否可見(jiàn)
=True
可見(jiàn)。
=False
不可見(jiàn)。

Top,Left,Width,Height 表示控件在窗體中的位置和尺寸。

事件:

Click 當(dāng)點(diǎn)擊或按下快捷鍵時(shí)發(fā)生,常用于使和它一起使用的Text控件獲得輸入交點(diǎn)。
例:
Private Sub Label1_Click()
Text1.SetFocus
End Sub

Text控件

Text控件接受用戶的輸入的字符串?dāng)?shù)據(jù)。

屬性:

Text 表示用戶輸入的內(nèi)容。
例:Label1.Caption=Text1.Text
Text1控件接收用戶輸入的數(shù)據(jù)通過(guò)Label1控件顯示出來(lái)。

SelStart 表示用戶選中一段文字的起始位置。第一個(gè)字符位置為0。

SelLength 表示用戶選中文字的長(zhǎng)度。

SelText 表示用戶選中文字的內(nèi)容。

例:0123456789
這時(shí):SelStart=5,SelLength=4,SelText="5678"

MultiLine 表示是否是多行輸入。
=True
是多行輸入。
=False
不是多行輸入(缺省) 。

ScrollBars 多行情況下是否需要滾動(dòng)條。
=0
沒(méi)有。
=1
有水平。
=2
有垂直。
=3
水平、垂直都有。

Password 表示口令字符。Text屬性返回用戶輸入數(shù)據(jù),屏幕上顯示該字符。

方法:

SetFocus 使當(dāng)前控件獲得輸入交點(diǎn)。

事件:

KeyPress 當(dāng)在控件上按下按鍵時(shí)發(fā)生。
Private Sub Text1_KeyPress(KeyAscii As Integer)
End Sub
KeyAscii
表示用戶按鍵的ASCII碼,如果在事件中將它改為0,則認(rèn)為沒(méi)有按鍵。
例:編寫只允許輸入數(shù)字的Text控件。
Private Sub Text1_KeyPress(KeyAscii As Integer)
If KeyAscii<Asc("0") Or KeyAscii>Asc("9") Then
KeyAscii=0
End If
End Sub

Change 當(dāng)控件內(nèi)容改變時(shí)發(fā)生。

LostFoucus 當(dāng)控件失去輸入交點(diǎn)時(shí)發(fā)生。

GotFoucus 當(dāng)控件獲得輸入交點(diǎn)時(shí)發(fā)生。
通常我們?cè)?/span>Text控件獲得輸入交點(diǎn)時(shí)全選它的內(nèi)容,方便用戶直接修改數(shù)據(jù)。
代碼如下:
Private Sub Text1_GotFocus()
Text1.SelStart=0
Text1.SelLength=Len(Text1.Text)
End Sub

CommandButton控件

CommandButton控件接受用戶的命令。

屬性:

Caption 表示按鈕所顯示的內(nèi)容
例:Command1.Caption="&OK"

事件:

Click 當(dāng)點(diǎn)擊或按下快捷鍵時(shí)發(fā)生。

CheckBox控件

CheckBox控件檢查某個(gè)選項(xiàng)是否被選中。

屬性:

Caption 表示檢查框所提示的內(nèi)容。
例:Check1.Caption="Windows &98":Check2.Caption="Windows &NT"

Value 表示檢查框是否被選中。
=0
未選中。
=1
選中。
例:Check1.Value=1:Check2.Value=0

事件:

Click 當(dāng)點(diǎn)擊或按下快捷鍵時(shí)發(fā)生。

OptionButton控件

OptionButton控件檢查一個(gè)選項(xiàng)是否被選中,它與CheckBox的區(qū)別是:
CheckBox
是多選多項(xiàng)。
OptionButton
是多選一項(xiàng)。

屬性:

Caption 表示檢查框所提示的內(nèi)容。
例:Option1.Caption="":Option2.Caption=""

Value 表示檢查框是否被選中。
=False
未選中。
=True
選中。
例:Option1.Value=False:Option2.Value=True

事件:

Click 當(dāng)點(diǎn)擊或按下快捷鍵時(shí)發(fā)生。

Frame控件

Frame控件主要用于為OptionButton控件分組。

屬性:

Caption 表示分組所提示的內(nèi)容。
例:Frame1.Caption="性別":Frame2.Caption="民族"

ListBox控件

ListBox控件用于在一組列表中選擇其中的一項(xiàng)或多項(xiàng)。

屬性:

Text 表示當(dāng)前操作項(xiàng)內(nèi)容。

ListCount 表示當(dāng)前列表框中總數(shù)據(jù)項(xiàng)數(shù)。

ListIndex 表示當(dāng)前操作項(xiàng)下標(biāo),第1項(xiàng)=0。

List(i) 表示第i項(xiàng)表項(xiàng)內(nèi)容。

MultiSelect 表示是否允許多選擇。

Selected(i) 表示第i項(xiàng)是否被選中。

SelCount 表示被選中的項(xiàng)數(shù)。

Sort 表示是否排序。

方法:

AddItem 向列表框增加一項(xiàng)數(shù)據(jù)。
ListX.AddItem(Item As String)

RemoveItem 刪除第i項(xiàng)
ListX.RemoveItem(i As Integer)

事件:

Click 當(dāng)點(diǎn)擊列表框中的一項(xiàng)數(shù)據(jù)時(shí)發(fā)生。

ComboBox控件

ComboBox控件與ListBox基本相同,它的優(yōu)點(diǎn)在于占用的面積小,除了可以在選項(xiàng)中選擇外還可以輸入其它數(shù)據(jù)。它的缺點(diǎn)是不能多選擇。

屬性:

Text 存放從選項(xiàng)中選擇的數(shù)據(jù)或用戶輸入的數(shù)據(jù)。
其它方法與事件和ListBox相同。

Image控件

Image控件用于顯示一張圖片。

屬性:

Picture 存放圖片的數(shù)據(jù)。
通常我們使用LoadPicture函數(shù)讀入一張圖片。
例:ImageX.Picture=LoadPicture("C:\1.bmp")
[
]LoadPicture支持BmpJpg、Gif、等多種格式圖片文件。

Stretch 顯示圖片的方式。
=True
以控件的尺寸顯示圖片。
=False
以圖片的原尺寸顯示圖片。

Timer控件

Timer控件以固定間隔時(shí)間名觸發(fā)它的Timer事件。

屬性:

Enabled 表示是否起動(dòng)計(jì)時(shí)器。
=True
啟動(dòng)。
=False
關(guān)閉。

Intertval 表示觸發(fā)Timer事件的間隔時(shí)間以毫秒為單位,即:10001秒。

事件:

Timer當(dāng)計(jì)時(shí)器計(jì)時(shí)到間隔時(shí)間時(shí)發(fā)生。

實(shí)驗(yàn)內(nèi)容

1.新建一個(gè)工程,在窗體上添加若干控件,然后分別對(duì)控件的常用屬性Name、Caption、HeightWidth、Top、Left、EnabledVisible、FontName、FontSizeBackColor等進(jìn)行設(shè)置,記錄設(shè)置后控件的狀態(tài)和效果

2.設(shè)計(jì)一個(gè)利用滾動(dòng)條來(lái)調(diào)節(jié)字體大小的程序。從組合框選擇字體,通過(guò)滾動(dòng)條來(lái)調(diào)節(jié)文本框中字體的大小并在窗體上的標(biāo)簽顯示出字體的大小。

3利用時(shí)鐘控件建立一個(gè)定時(shí)器。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

實(shí)驗(yàn)八  VBActiveX控件

實(shí)驗(yàn)題目:

學(xué)習(xí)在VB中使用ActiveX控件的方法

實(shí)驗(yàn)?zāi)康模?/span>

1.了解ActiveX控件和可插入對(duì)象的一般操作方法。

2. 了解常用ActiveX控件的編程方法。

實(shí)驗(yàn)指導(dǎo):

 

(Class)和對(duì)象(Object)

ActiveX服務(wù)器是以對(duì)象為單位提供服務(wù)的,所以,我們要在服務(wù)器中定義類。
類是對(duì)象的模板,對(duì)象是類的實(shí)例。
例如:人類是一個(gè)類,它定義了人的基本特征。張三、李四就分別是人類的兩個(gè)實(shí)例。
類是抽象的,而實(shí)例是確實(shí)存在的。

類:

在工程菜單中選擇增加類模塊,就向工程增加一個(gè)類。修改類的Name屬性,就修改了類的名稱。

類事件:

Initialize 創(chuàng)建類的新實(shí)例時(shí)發(fā)生。

Terminate 將對(duì)象設(shè)置為Nothing時(shí)發(fā)生。

我們通常在Initialize事件中初始化數(shù)據(jù),而在Terminate事件中做一些掃尾工作。

向類增加屬性

1.增加公有變量

例如:向工程增加一個(gè)類,設(shè)置Name屬性為ClassEx,在它的通用說(shuō)明部分增加如下代碼:
Public s As String
在客戶程序中定義對(duì)象,使用屬性。
Dim obj As New ClassEx
obj.s = "ABCDEFG"
Label1.Caption=obj.s

2.增加屬性過(guò)程

當(dāng)我們需要只讀或只寫屬性,或者除了給屬性賦值,還需要執(zhí)行一段代碼時(shí),就使用屬性過(guò)程。使用屬性過(guò)程通常要定義一個(gè)局部變量保存其數(shù)據(jù)值。
屬性過(guò)程有兩種:讀屬性寫屬性
如果一個(gè)屬性即定義了讀屬性又定義了寫屬性,它就是一個(gè)可讀寫的屬性。

定義讀屬性:

Dim XXXX As Type
Public Property Get
屬性名() As Type
...
屬性名=XXXX
End Property

定義寫屬性:

Public Property Let[Set] 屬性名(參數(shù) As Type)
XXXX=
參數(shù)
...
End Property

Let 用于普通數(shù)據(jù)類型。

Set 用于對(duì)象類型。

向類增加方法

增加公有過(guò)程(函數(shù)和子程序)
Public Sub Proc1(...)
...
End Sub

Public Function Fun1(...)As Type
...
End Funciton

在客戶一端:
Dim obj As ClassEx
obj.Proc1...

ActiveX服務(wù)器中的類屬性

ActiveX服務(wù)器中類增加了兩個(gè)屬性:

Instancing 說(shuō)明該類是單用戶還是多用戶
=SingleUse
單用戶,即客戶中每聲明一個(gè)類實(shí)例,將啟動(dòng)一個(gè)服務(wù)器應(yīng)用程序。
=MnltiUse
多用戶,所有對(duì)象使用一個(gè)服務(wù)器應(yīng)用程序。
注:這個(gè)屬性必需在設(shè)計(jì)時(shí)設(shè)置。進(jìn)程內(nèi)服務(wù)器只能設(shè)置為多用戶

實(shí)驗(yàn)內(nèi)容

1.在窗體上建立ImageListToolBar控件,自己查找若干圖標(biāo),加入到工具欄中,單擊這些圖標(biāo)后,由信息框彈出特征文字。

2.設(shè)計(jì)一個(gè)滾動(dòng)條控制進(jìn)度條進(jìn)程的程序。在窗體上建立一個(gè)滾動(dòng)條和一個(gè)進(jìn)度條,調(diào)節(jié)滾動(dòng)條時(shí),進(jìn)度條隨之變化。

 

 

實(shí)驗(yàn)九  VB對(duì)話框設(shè)計(jì)

實(shí)驗(yàn)題目:

學(xué)習(xí)對(duì)話框控件的使用方法

實(shí)驗(yàn)?zāi)康模?/span>

    1. 熟悉通用對(duì)話框的使用。

2. 熟悉對(duì)話框的設(shè)計(jì)。

實(shí)驗(yàn)指導(dǎo):

CommandDialog控件

CommandDialog控件包括了Windows操作系統(tǒng)提供的6種公用對(duì)話框。(僅介紹前四種對(duì)話框)
Open
、Save 、Color Font 、Printer Help

Open對(duì)話框 和 Save對(duì)話框

屬性:

Filename表示選擇的文件名(含路徑)。

Filter決定列什么樣的文件。

格式:說(shuō)明|過(guò)濾|說(shuō)明|過(guò)濾|...
例:Filter="Text|*.txt|Picture|*.bmp;*.gif"

方法:

ShowOpen彈出Open對(duì)話框。

ShowSave彈出Save對(duì)話框。

例:打開一個(gè)正文文件,把文件名賦給變量fn。
Dim fn As String
CDlg1.Filter="Text|*.txt"
CDlg1.ShowOpen
fn=CDlg1.Filename

Color對(duì)話框

屬性:

Color選擇的顏色。

方法:

ShowColor彈出Color對(duì)話框。
例:修改標(biāo)簽控件的Label1顏色。
CDlg1.Color=Label1.ForeColor
CDlg1.ShowColor
Label1.ForeColor=CDlg1.Color

Font對(duì)話框

屬性:

Flags決定字體的集合。

FontBold是否加粗。

FontItalic是否斜體。

FontName字體名稱。

FontSize字體大小。

方法:

ShowFont彈出Font對(duì)話框。
例:修改標(biāo)簽控件Label1的字體。
CDlg1.FontName=Label1.FontName
CDlg1.FontSize
=Label1.FontSize
CDlg1.Flags=cdlCFScreenFonts
CDlg1.ShowFont
Label1.FontBold=CDlg1.FontBold
Label1.FontItalic=CDlg1.FontItalic
Label1.FontName=CDlg1.FontName
Label1.FontSize=CDlg1.FontSize

實(shí)驗(yàn)內(nèi)容

設(shè)計(jì)應(yīng)用程序,運(yùn)行效果如圖17.6。

功能描述:

當(dāng)用戶單擊“打開”按鈕時(shí),啟動(dòng)打開對(duì)話框,選擇文本文件,在文本框中顯示出來(lái);單擊“字體”按鈕時(shí),啟動(dòng)字體對(duì)話框,選擇合適的字體屬性改變文本框的字體及顏色;單擊“保存”按鈕時(shí),啟動(dòng)保存對(duì)話框,將文件保存。單擊“退出”按鈕時(shí),退出程序。

 

提示:打開文件方法

    Open CommonDialog1.FileName For Input As #1

    Do While Not EOF(1)

        Line Input #1, inputdata

        Text1.Text = Text1.Text + inputdata + Chr(13) + Chr(10)

    Loop

    Close #1

保存文件方法

    Open CommonDialog1.FileName For Output As #2

    Print #2, Text1.Text

    Close #2

 

實(shí)驗(yàn)十  VB菜單設(shè)計(jì)

實(shí)驗(yàn)題目:

學(xué)習(xí)設(shè)計(jì)頂端菜單和彈出式菜單的編輯和操作方法

實(shí)驗(yàn)?zāi)康模?/span>

1. 掌握VB中的菜單設(shè)計(jì)方法。

2. 掌握VB中菜單命令代碼的編寫方法。

3. 了解VB快捷菜單設(shè)計(jì)方法。

實(shí)驗(yàn)指導(dǎo)

要設(shè)計(jì)菜單就得先打開菜單編輯器窗口,打開的方法有下面三種:

1、執(zhí)行“工具”菜單中的“菜單編輯器”命令。

2、直接用快捷鍵“Ctrl+E”。

3、單擊工具欄上的工具按鈕。

菜單編輯器窗口的組成如下:

1、標(biāo)題

它是一個(gè)文本框,用來(lái)輸入菜單標(biāo)題或菜單項(xiàng)顯示在窗體上的標(biāo)題。輸入的內(nèi)容同時(shí)在窗口的最下面文本區(qū)顯示出來(lái)。

2、名稱

每個(gè)菜單項(xiàng)必須有一個(gè)控件名,在名稱文本框中輸入的字符是VB5使用的控件名。它是不會(huì)在窗體中顯示出來(lái)的,而是在程序中用來(lái)標(biāo)識(shí)各種菜單項(xiàng)控件。

3、索引

用于將幾個(gè)菜單項(xiàng)共用一個(gè)控件名稱,組成控件數(shù)組。

4、快捷鍵

用于建立菜單項(xiàng)的快捷菜單。當(dāng)我們需要為某菜單項(xiàng)建立快捷鍵時(shí),單擊該框右側(cè)的向下箭頭,便會(huì)下拉一個(gè)列表框,從中選擇所需的快捷鍵。

5、幫助上下文ID

用于制作幫助菜單時(shí),該項(xiàng)屬性為幫助文件的ID號(hào),通過(guò)它可以找到幫助文件中相應(yīng)的幫助主題的標(biāo)題。

6、協(xié)調(diào)位置

每個(gè)單獨(dú)的菜單控件都具有該屬性,它決定在激活對(duì)象的菜單時(shí),窗體頂層菜單如何在窗體中。包括四個(gè)選項(xiàng):

0(None):(缺省值)窗體的菜單不在菜單欄中顯示。

1(Left):窗體的菜單在菜單欄的左邊位置顯示

2(Middle):窗體的菜單在菜單欄的中間位置顯示。

3(Right):窗體的菜單在菜單欄的右邊位置顯示。

7、“復(fù)選”框

它決定是否允許在菜單項(xiàng)的左邊設(shè)置復(fù)選標(biāo)記。

8、“可見(jiàn)”復(fù)選框

此選項(xiàng)決定是否讓菜單在程序運(yùn)行時(shí)是否被顯示。

9、“有效”復(fù)選框

此選項(xiàng)決定是否讓菜單項(xiàng)對(duì)事件做出響應(yīng)。

10、“顯示窗口列表”復(fù)選框

MDI(多文檔)應(yīng)用程序中,確定菜單控件是否包含一個(gè)打開的MDI子窗體列表。

11、四個(gè)箭頭按鈕

右箭頭和左箭頭:表示當(dāng)前設(shè)計(jì)的菜單是主菜單還是子菜單。即為菜單層次選擇按鈕。上箭頭和下箭頭表示將菜單赤示文本區(qū)中選中的菜單項(xiàng)與其上邊或下邊菜單項(xiàng)之間交換位置,也就是說(shuō)被選中的菜單項(xiàng)上移或下移了。

12、“下一個(gè)”命令按鈕

它將選定移動(dòng)到下行,表示當(dāng)前菜單項(xiàng)已建好,換行再創(chuàng)建下一個(gè)菜單項(xiàng)。

13、“插入”命令按鈕

單擊插入命令按鈕,可以在當(dāng)前被選中的菜單項(xiàng)前插入一個(gè)新的空白菜單項(xiàng)。

14、“刪除”命令按鈕  用于刪除選中的菜單項(xiàng)。

實(shí)驗(yàn)內(nèi)容

1.  利用菜單編輯器創(chuàng)建“文件”和“編輯”菜單,編寫相應(yīng)源代碼程序

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

實(shí)驗(yàn)十一  數(shù)據(jù)庫(kù)操作

實(shí)驗(yàn)題目:

使用控件訪問(wèn)數(shù)據(jù)庫(kù)

實(shí)驗(yàn)?zāi)康模?/span>

1.           掌握創(chuàng)建數(shù)據(jù)庫(kù)的方法

2.           掌握數(shù)據(jù)控件的使用方法

3.           掌握控件的數(shù)據(jù)綁定技術(shù)

4.           掌握數(shù)據(jù)庫(kù)記錄集的操作方法

實(shí)驗(yàn)指導(dǎo):

數(shù)據(jù)控件

Connect屬性:指定打開的數(shù)據(jù)庫(kù)類型,并且包括參數(shù),如用戶和口令等。

DatabaseName屬性:確定數(shù)據(jù)控件訪問(wèn)哪一個(gè)數(shù)據(jù)庫(kù)。[]:對(duì)于多表數(shù)據(jù)庫(kù)它為具體的數(shù)據(jù)庫(kù)文件名。對(duì)于單表數(shù)據(jù)庫(kù)它為具體的數(shù)據(jù)庫(kù)文件所在的目錄,而具體文件名放在RocordSouce屬性中。

RecordSource屬性確定數(shù)據(jù)控件的記錄集,即:所要訪問(wèn)的數(shù)據(jù)內(nèi)容。它可以是一個(gè)表名、存儲(chǔ)查詢名或一條SQL語(yǔ)句。[]:當(dāng)我們?cè)谶\(yùn)行時(shí)修改了該屬性后,需要調(diào)用Refresh方法刷新記錄集。

Refresh方法:當(dāng)我們?cè)谶\(yùn)行時(shí)修改了RecordSource屬性后,需要調(diào)用該方法刷新記錄集。

UpdateRecord方法:將綁定在數(shù)據(jù)控件上的控件的數(shù)據(jù)寫入數(shù)據(jù)庫(kù)中,即:當(dāng)我們修改了數(shù)據(jù)后調(diào)用該方法確認(rèn)修改。

CancelUpdate方法:將數(shù)據(jù)庫(kù)中數(shù)據(jù)從新讀到綁定在數(shù)據(jù)控件上的控件中,即:當(dāng)我們修改了數(shù)據(jù)后調(diào)用該方法放棄修改。

Validate事件:當(dāng)我們移動(dòng)記錄集記錄指針時(shí)發(fā)生。

Sub XXXX_Validate(Action As Integer,Save As Integer) 其中:
Action 指出如何產(chǎn)生了該事件,如:移動(dòng)、增加、查詢等。
Save 表示是否保存已修改的數(shù)據(jù)。
當(dāng)我們修改了綁定在數(shù)據(jù)控件的數(shù)據(jù),以沒(méi)有調(diào)用UpdateRecord,而要移動(dòng)指針時(shí),Save=True。如果在事件中令Save=False,則放棄修改。

Reposition事件:當(dāng)我們移動(dòng)記錄集記錄指針時(shí)發(fā)生。通常我們?cè)谠撌录酗@示當(dāng)前的指針位置。

記錄集(RecordSet

記錄集是記錄控件所引用得整個(gè)記錄的集合。

BOF屬性:當(dāng)記錄集記錄指針指向起始之前返回True。

EOF屬性:當(dāng)記錄集記錄指針指向結(jié)尾返回True。

AbsloutePositon屬性:返回當(dāng)前記錄集記錄指針,第一條記錄為0,只讀屬性。

BookMark屬性:String類型。返回或設(shè)置當(dāng)前記錄集記錄指針的書簽,可讀寫。[]:程序中使用BookMark屬性重定位記錄指針,而不能使用AbsloutePositon屬性。

AddNew方法:向記錄集增加一條新記錄。

Delete方法:從記錄集中將當(dāng)前記錄刪除。在刪除后常使用MoveNext方法移動(dòng)指針。

MoveFirst方法:將記錄集指針移動(dòng)到第一條記錄上。

MoveLast方法:將記錄集指針移動(dòng)到最后一條記錄上。

MovePrevious方法:將記錄集指針移動(dòng)到前一條記錄上。

MoveNext方法:將記錄集指針移動(dòng)到下一條記錄上。

FindFirst方法:在記錄集中查詢附合條件的第一條記錄。

FindLast方法:在記錄集中查詢附合條件的最后一條記錄。

FindPrevious方法:在記錄集中查詢附合條件的前一條記錄。

FindNext方法:在記錄集中查詢附合條件的下一條記錄。

綁定控件

我們可以將普通控件綁定在數(shù)據(jù)控件上,來(lái)完成自動(dòng)地顯示、更新記錄集的數(shù)據(jù)。
常用的可綁定的控件有:LabelTextCheckBox、Image等。通過(guò)設(shè)置這些控件的DataSourceDataField屬性來(lái)完成綁定。

DataSource 屬性表示綁定到哪一個(gè)數(shù)據(jù)控件上,程序中我們可能使用多個(gè)數(shù)據(jù)控件。

DataField 屬性表示綁定到記錄集的哪一個(gè)記錄上。

 

實(shí)驗(yàn)內(nèi)容:

1.通過(guò)“Microsoft Access”和VB6中的“可視化數(shù)據(jù)庫(kù)管理器”分別建立數(shù)據(jù)庫(kù)stud.mdb,其中有一個(gè)數(shù)據(jù)表student,并在數(shù)據(jù)表中輸入記錄。該數(shù)據(jù)表的結(jié)構(gòu)如下:

字段名

類型

長(zhǎng)度

學(xué)號(hào)

String

7

班級(jí)

String

8

姓名

String

8

性別

String

2

年齡

Integer

 

2利用數(shù)據(jù)庫(kù)記錄集的方法實(shí)現(xiàn)顯示、修改、添加和刪除記錄的功能。界面如下圖所示。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

實(shí)驗(yàn)十二  多文檔界面設(shè)計(jì)

實(shí)驗(yàn)題目:

設(shè)計(jì)多文檔界面

實(shí)驗(yàn)?zāi)康模?/span>

1.      掌握簡(jiǎn)單的MDI應(yīng)用程序的設(shè)計(jì)方法

2.      了解多文檔文本編輯器的設(shè)計(jì)方法

實(shí)驗(yàn)指導(dǎo):

多文檔界面,如 Word ,允許用戶同時(shí)打開多個(gè)文件進(jìn)行操作。在多文檔界面中,有一個(gè)窗體叫做主窗體(又稱為 MDI 窗體),其他窗體稱為子窗體。子窗體始終處在主窗體內(nèi)部,主窗體的位置移動(dòng)會(huì)導(dǎo)致子窗體的位置發(fā)生相應(yīng)變化。圖一
一、多文檔程序的建立:
多文檔程序至少有兩個(gè)窗體,一個(gè)主窗體和一個(gè)子窗體或多個(gè)子窗體,主窗體是其他窗體的容器。
1
、創(chuàng)建一個(gè)新工程,然后選擇工程/工程屬性菜單命令,加入“MDI窗體”:
2、在項(xiàng)目窗口中雙擊 Form1 切換到 Form1 ,然后將其 MDIChild 屬性設(shè)為 True 。

3、按 F5 鍵運(yùn)行程序

4、控制程序的打開狀態(tài):如果要讓程序打開時(shí)自動(dòng)載入 Form1 窗口,那么在工程屬性窗口中選擇啟動(dòng)對(duì)象 Form1 ;如果不想顯示子窗體,那么只需在啟動(dòng)對(duì)象中選擇 MDIForm1 就行了。
5
、子窗體的顯示:假設(shè)工程的啟動(dòng)對(duì)象為 MDIForm1 ,可以在主窗體中加入菜單,或者直接用 Load 的方法,如下:
Private Sub MDIForm_Load()
Form1.Show 0
End Sub
這段代碼將 Form1 顯示出來(lái),并呈非模態(tài)模式。
二、主窗體與子窗體的標(biāo)題:
當(dāng)主窗體與子窗體都呈顯現(xiàn)狀態(tài)時(shí),把子窗體最大化,你會(huì)發(fā)現(xiàn)窗體的標(biāo)題變成了主窗體標(biāo)題加上子窗體標(biāo)題。
三、主窗體與子窗體的菜單:在 VB 中,如果子窗體載入,那么主窗體的菜單將被子窗體的菜單替換;只有當(dāng)主窗體中沒(méi)有子窗體時(shí)才能顯示主窗體的菜單。

實(shí)驗(yàn)內(nèi)容:

1建立一個(gè)應(yīng)用程序,程序中有一個(gè)MDI窗體,通過(guò)MDI窗體的“文件”菜單中的“新建文檔”菜單項(xiàng)可建立一個(gè)文檔窗口作為MDI窗體的子窗體,在此子窗體可進(jìn)行文本編輯。通過(guò)菜單可建立多個(gè)文檔窗口,也可進(jìn)行編輯文檔內(nèi)容、關(guān)閉文檔等操作。


實(shí)驗(yàn)十三  文件的基本操作和文件的讀寫

實(shí)驗(yàn)題目:

vb中操作文件

實(shí)驗(yàn)?zāi)康模?/span>

1.掌握DriveListBoxDirListBoxFileListBox等文件控件的使用方法

2.掌握用傳統(tǒng)方式進(jìn)行文件復(fù)制、移動(dòng)、刪除及重命名等基本方法

3.掌握順序文件、隨機(jī)文件和二進(jìn)制文件的讀寫操作方法

實(shí)驗(yàn)指導(dǎo):

1.文件控件

DriveListBox控件

DriveListBox控件提供一個(gè)驅(qū)動(dòng)器列表。

屬性:Drive表示當(dāng)前選擇的驅(qū)動(dòng)器盤符。

事件:Change當(dāng)驅(qū)動(dòng)器選擇發(fā)生變化時(shí)發(fā)生。

DirListBox控件

DirListBox控件提供一個(gè)目錄列表。

屬性:Path表示當(dāng)前目錄的路徑。

事件:Change當(dāng)目錄選擇發(fā)生變化時(shí)發(fā)生。

FileListBox控件

FileListBox控件提供一個(gè)文件列表。

屬性:Path表示當(dāng)前文件列表所在的路徑。

Filename表示選擇的文件名(不含路徑)。

Pattern決定列什么樣的文件。

事件:Click當(dāng)點(diǎn)擊列表框的一項(xiàng)數(shù)據(jù)時(shí)發(fā)生。

2VB中三種文件的訪問(wèn)方式

(1) 使用二進(jìn)制文件訪問(wèn)

File System Object 模式不提供二進(jìn)制文件創(chuàng)建或訪問(wèn)方法。

打開二進(jìn)制型訪問(wèn)的文件

要為二進(jìn)制型訪問(wèn)打開文件,應(yīng)使用以下 Open 語(yǔ)句的語(yǔ)法:

Open pathname For Binary As filenumber

可以看到,二進(jìn)制訪問(wèn)中的 Open 與隨機(jī)存取的 Open 不同,它沒(méi)有指定 Len = reclength。如果在二進(jìn)制型訪問(wèn)的 Open 語(yǔ)句中包括了記錄長(zhǎng)度,則被忽略。

在長(zhǎng)度可變的字段中保存信息

通過(guò)使用二進(jìn)制型訪問(wèn)可使磁盤空間的使用降到最小。因?yàn)檫@不需要固定長(zhǎng)度的字段,類型聲明語(yǔ)句可以省略字符串長(zhǎng)度參數(shù)。

2)使用順序文件訪問(wèn)

當(dāng)要處理只包含文本的文件時(shí),比如由典型文本編輯器所創(chuàng)建的文件-也就是說(shuō),其中的數(shù)據(jù)沒(méi)有分成記錄的文件,使用順序型訪問(wèn)最好。順序型訪問(wèn)不太適于存儲(chǔ)很多數(shù)字,因?yàn)槊總€(gè)數(shù)字都要按字符串存儲(chǔ)。一個(gè)四位數(shù)將需要 4 個(gè)字節(jié)的存儲(chǔ)空間,而不是作為一個(gè)整數(shù)來(lái)存儲(chǔ)時(shí)只需的 2 個(gè)字節(jié)。

打開順序訪問(wèn)文件

當(dāng)以順序型訪問(wèn)打開一個(gè)文件時(shí),可執(zhí)行以下操作:

從文件輸入字符 (Input)

向文件輸出字符 (Output)

把字符加到文件 (Append)

要順序型訪問(wèn)打開一個(gè)文件,Open 語(yǔ)句使用以下語(yǔ)法:

Open pathname For [Input | Output | Append] As filenumber [Len = buffersize]

當(dāng)打開順序文件作為 Input 時(shí),該文件必須已經(jīng)存在,否則,會(huì)產(chǎn)生一個(gè)錯(cuò)誤。然而,當(dāng)打開一個(gè)不存在的文件作為 Output Append 時(shí),Open 語(yǔ)句首先創(chuàng)建該文件,然后再打開它。當(dāng)在文件與程序之間拷貝數(shù)據(jù)時(shí),選項(xiàng) Len 參數(shù)指定緩沖區(qū)的字符數(shù)。

在打開一個(gè)文件 Input、Output Append 以后,在為其它類型的操作重新打開它之前必須先使用 Close 語(yǔ)句關(guān)閉它。

編輯為順序訪問(wèn)打開的文件

如果要編輯一個(gè)文件,先把它的內(nèi)容讀入到程序變量,然后改變這些變量,最后再把這些變量寫回到該文件。

從文件中讀取字符串

要檢索文本文件的內(nèi)容,應(yīng)以順序 Input 方式打開該文件。然后使用 Line Input#,Input( ),或者 Input# 語(yǔ)句將文件拷貝到程序變量中。

Visual Basic 提供了一次讀寫順序文件一個(gè)字符或一行的語(yǔ)句和功能。

把字符串寫入文件

要在順序文件中存儲(chǔ)變量的內(nèi)容,應(yīng)以順序 Output  Append 打開它,然后使用 Print # 語(yǔ)句。Visual Basic 也支持 Write # 語(yǔ)句,它把一列數(shù)字和/或字符串表達(dá)式寫入文件。它自動(dòng)地用逗號(hào)分開每個(gè)表達(dá)式,并且在字符串表達(dá)式端放置引號(hào)。

3)使用隨機(jī)文件訪問(wèn)

File System Object 模式不提供隨機(jī)文件創(chuàng)建或訪問(wèn)方法。隨機(jī)型訪問(wèn)文件中的字節(jié)構(gòu)成相同的一些記錄,每個(gè)記錄包含一個(gè)或多個(gè)字段。具有一個(gè)字段的記錄對(duì)應(yīng)于任一標(biāo)準(zhǔn)類型,比如整數(shù)或者定長(zhǎng)字符串。具有多個(gè)字段的記錄對(duì)應(yīng)于用戶定義類型。

聲明變量

在應(yīng)用程序打開以隨機(jī)型訪問(wèn)的文件以前,應(yīng)先聲明所有用來(lái)處理該文件數(shù)據(jù)所需的變量。這包括用戶定義類型的變量,它對(duì)應(yīng)該文件中的記錄,和標(biāo)準(zhǔn)類型的其它變量,這些變量保存為隨機(jī)型訪問(wèn)而打開的文件與處理相關(guān)的數(shù)據(jù)

定義記錄類型

在打開一個(gè)文件進(jìn)行隨機(jī)訪問(wèn)之前,應(yīng)定義一個(gè)類型,該類型對(duì)應(yīng)于該文件包含或?qū)挠涗洝?/span>

在類型定義中聲明字段變量

因?yàn)殡S機(jī)訪問(wèn)文件中的所有記錄都必須有相同的長(zhǎng)度,所以固定的長(zhǎng)度對(duì)用戶定義類型中的各字符串元素通常很有用。如果實(shí)際字符串包含的字符數(shù)比它寫入的字符串元素的固定長(zhǎng)度少,則 Visual Basic 會(huì)用空白(字符代碼 32)來(lái)填充記錄中后面的空間。還有,如果字符串比字段的尺寸長(zhǎng),則它就會(huì)被截?cái)?。如果使? 長(zhǎng)度可變的字符串,則任何用 Put 存儲(chǔ)的或用 Get 檢索的記錄總長(zhǎng)度都不能超過(guò)在 Open 語(yǔ)句的 Len 分句中所指定的記錄長(zhǎng)度。

聲明其它變量

在定義與典型記錄對(duì)應(yīng)的類型以后,應(yīng)接著聲明程序需要的任何其它變量,用來(lái)處理作為隨機(jī)訪問(wèn)而打開的文件

打開隨機(jī)訪問(wèn)的文件

要打開隨機(jī)訪問(wèn)的文件,Open 語(yǔ)句使用以下語(yǔ)法:

Open pathname [For Random] As filenumber Len = reclength

因?yàn)?span lang="EN-US"> Random 是缺省的訪問(wèn)類型,所以 For Random 關(guān)鍵字是可選項(xiàng)。表達(dá)式 Len = reclength 指定了每個(gè)記錄的尺寸。如果 reclength 比寫文件記錄的實(shí)際長(zhǎng)度短,則會(huì)產(chǎn)生一個(gè)錯(cuò)誤。如果 reclength 比記錄的實(shí)際長(zhǎng)度長(zhǎng),則記錄可寫入,只是會(huì)浪費(fèi)些磁盤空間。

編輯隨機(jī)型訪問(wèn)打開的文件

如要編輯隨機(jī)型訪問(wèn)的文件,請(qǐng)先把記錄從文件讀到程序變量,然后改變各變量的值,最后,把變量寫回該文件。后面各節(jié)討論如何編輯隨機(jī)型訪問(wèn)打開的文件。

把記錄讀入變量

使用 Get 語(yǔ)句把記錄復(fù)制到變量。

把變量寫入記錄

使用 Put 語(yǔ)句把記錄添加或者替換到隨機(jī)型訪問(wèn)打開的文件。

替換記錄

要替換記錄,請(qǐng)使用 Put 語(yǔ)句,指定想要替換的記錄位置,

添加記錄

要向隨機(jī)訪問(wèn)打開的文件的尾端添加新記錄,應(yīng)使用Put 語(yǔ)句。把 Position 變量的值設(shè)置為比文件中的記錄數(shù)多 1。

刪除記錄

通過(guò)清除其字段可以刪除一個(gè)記錄,但是該記錄仍在文件中存在。通常文件中不能有空記錄,因?yàn)樗鼈儠?huì)浪費(fèi)空間且會(huì)干擾順序操作。最好把余下的記錄拷貝到一個(gè)新文件,然后刪除老文件。

實(shí)驗(yàn)內(nèi)容:

1.:建立一個(gè)應(yīng)用程序,該程序利用文件系統(tǒng)控件可以實(shí)現(xiàn)文件的復(fù)制、移動(dòng)和刪除,如下圖所示。

2.編寫程序,要求能將文本框中的內(nèi)容寫入順序文件,或者能將順序文件的內(nèi)容讀入到文本框中,如下圖所示。

 

    本站是提供個(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)論公約

    類似文章 更多