Visual Basic 程式設計範例教本

Download Report

Transcript Visual Basic 程式設計範例教本

Visual Basic 2005
程式設計範例教本


課程名稱:_____________
指導教授:_____________
本書特點








說明Visual Basic 2005程式建立主控台和Windows應
用程式
詳細說明Visual Basic 2005語法、流程控制和程序與函
數
使用Visual Basic 2005 Express建立表單、新增控制項
的圖形化視窗程式設計
Windows視窗功能表的製作和事件處理
多表單與模組的應用程式建立
建立繪圖、多媒體、檔案資料夾處理和網路程式設計
使用ADO.NET 2.0、資料來源來存取Access和SQL
Server Express資料庫
物件導向程式設計、泛型和.NET Framework類別物件
的使用
如何閱讀本書(一)


在本書內容的架構上,是循序漸進由程式語言和
Visual Basic 2005程式開發環境Visual Basic
2005 Express(簡稱VBE)的安裝開始,首先
建立主控台應用程式後,才真正進入Visual
Basic 2005的Windows視窗應用程式。
第1~2章是程式語言基礎、VBE安裝使用和如何
建立主控台和Windows應用程式。事實上,
Windows視窗程式設計在其他程式語言屬於進階
主題,Visual Basic 2005可以輕鬆建立視窗應
用程式是因為VBE整合開發環境的強大功能,可
以在不自行撰寫任何程式碼的情況下,就輕鬆建
立出Windows應用程式。
如何閱讀本書(二)


第3章是Visual Basic 2005語言的變數、資料型
態和運算子,筆者使用主控台應用程式範例來說
明此部分的語法,第4章是以輸出和輸入角度來說
明視窗表單的輸出與輸入介面,第5~7章使用
Windows視窗應用程式範例說明Visual Basic
2005語言的流程控制和程序與函數,第8章是基
本資料結構的字串與陣列,來說明程式資料的常
用儲存方式。
第9~10章建立圖形使用介面的視窗程式設計,
說明Windows視窗程式設計的事件處理和介面設
計,第11章是如何在視窗繪圖、載入圖片和建立
動畫等多媒體效果。
如何閱讀本書(三)


第12章的模組可以讓讀者建立多模組、多表單和
多文件的視窗應用程式,輕鬆擴大讀者程式設計
的視野,第13~15章是檔案、資料庫和網路程式
設計,說明Visual Basic 2005程式如何使用串
流讀寫檔案,ADO.NET存取資料庫和網路程式設
計。
第16章是以主控台應用程式來說明物件導向程式
設計的類別、繼承、介面、多形和運算子過載等
觀念。最後第17章說明如何使用.NET
Framework類別函式庫的眾多類別物件和泛型程
式設計。
目錄-I








第1章:
第2章:
第3章:
第4章:
第5章:
第6章:
第7章:
第8章:
程式語言與Visual Basic的基礎
建立Visual Basic應用程式
變數、資料型態與運算子
視窗應用程式的基本輸出入
選擇控制項與條件敘述
迴圈結構
程序與函數
字串與陣列
目錄-II









第9章: 視窗應用程式的事件處理
第10章: 視窗應用程式的工具列與功能表
第11章: 繪圖與多媒體
第12章: 建立多表單與模組的應用程式
第13章: 檔案與資料夾處理
第14章: ADO.NET的資料庫存取
第15章: 建立網路應用程式
第16章: 物件導向程式設計
第17章: 泛型類別與.NET Framework
目錄-III



附錄A: 建立SQL Server 2005 Express資料庫
附錄B: Access資料庫的建立
附錄C: ASCII碼表
第1章 程式語言與Visual Basic的
基礎




1-1
1-2
1-3
1-4
程式語言的基礎
Visual Basic語言的基礎
建立Visual Basic程式開發環境
Visual Basic 2005 Express的使用
1-1 程式語言的基礎





1-1-1
1-1-2
1-1-3
1-1-4
1-1-5
程式、軟體與應用程式
程式語言的種類
低階語言
高階語言
程式是如何執行
1-1-1 程式、軟體與應用程式-程
式


「程式」(Programs)是使用指定程式語言所
撰寫沒有混淆文字、數字和鍵盤符號組成的特殊
符號,這些符號組合成指令和敘述,再進一步編
寫成程式碼,程式碼可以告訴電腦解決指定問題
的步驟。
簡單的說,程式就像是一個轉換器,當從電腦鍵
盤或滑鼠取得輸入資料後,執行程式就可以將資
料轉換成有用的資訊,如下圖所示:
1-1-1 程式、軟體與應用程式-軟體
與應用程式


「軟體」(Softwares)是一種電腦執行
的應用程式或作業系統,通常軟體是一個
或多個程式的泛稱,或是整套應用程式。
「應用程式」(Applications)是一種處
理指定工作的電腦程式,例如:數學計算
分析、文書處理、試算表和程式語言整合
開發工具等。
1-1-1 程式、軟體與應用程式-控制
台與視窗應用程式


視窗應用程式(Windows Applications)是使
用「GUI」(Graphic User Interface)圖形介
面來輸入與輸出資料,一種更人性化使用者介面
的應用程式。
不同於早期DOS時代或UNIX/Linux系統的控制
台應用程式(Console Applications),使用者
是在「終端機」(Terminals)執行應用程式,
其使用介面都是文字模式的鍵盤輸入,或單純文
字內容的輸出結果,稱為「命令列模式」
(Command-line Interface)。
1-1-2 程式語言的種類

程式語言隨著電腦科技的進步,已經延伸
出龐大的族群。在程式語言的分類上,以
發展世代來區分,如下表所示:
世代
第一世代
第二世代
第三世代
第四世代
第五世代
程式語言
機器語言(Machine Languages)
組合語言(Assembly Languages)
高階語言(High Level Languages)
應用程式產生的語言(Application-Generation Languages)或查
詢語言(Query Languages)
邏輯導向語言(Logic-Oriented Languages)
1-1-3 低階語言-說明

低階語言(Low Level Languages)是一
種偏向電腦容易了解的程式語言,簡單的
說,它是電腦看得懂的程式語言。所以執
行效率高,但是使用者並不易學習。
1-1-3 低階語言-機器語言
機器語言(Machine Language)
 程式使用0和1二進位表示的程式碼,電腦
可以直接執行程式,執行效率最高,如下
所示:
0111 0001 0000 1111
1001 1101 1011 0001
1-1-3 低階語言-組合語言
組合語言(Assembly Language)
 組合語言使用簡單符號的指令集代表機器
語言0和1表示的二進位程式碼,只需使用
「組譯程式」(Assemblers)就可以轉換
成機器語言。在電腦上執行,它是一種十
分接近機器語言的程式語言,如下所示:
MOV AX 01
MOV BX 02
ADD AX BX
1-1-4 高階語言-說明


高階語言(High Level Languages)是一種接
近人類語言的程式語言,或稱為半英文(Halfenglish)的程式語言。因為電腦並不能馬上看的
懂,所以需要進一步翻譯,在轉換成機器語言後,
其轉換的程式碼通常比直接使用機器語言撰寫的
冗長,所以效率較低,但是非常適合使用者學習。
目前常見的高階語言有:Basic、C/C++、C#、
Java、FORTRAN、COBOL和Pascal等,高階語
言需要進行翻譯,將程式碼轉譯成機器語言的執
行檔案後,才能在電腦上執行。
1-1-4 高階語言-編譯程式
編譯程式(Compilers)
 C/C++等程式語言屬於編譯語言,編譯程
式需要檢查完整個程式檔案的程式碼,在
完全沒有錯誤的情況下,才會翻譯成機器
語言的程式檔案,其主要功能有兩項,如
下所示:
• 檢查程式錯誤。
• 將程式翻譯成機器語言的程式檔案。
1-1-4 高階語言-直譯程式
直譯程式(Interpreters)
 早期BASIC語言(例如:BASICA、
QuickBasic等)和目前網頁技術的「腳本」
(Scripts)語言,例如:VBScript和
JavaScript都屬於直譯語言。
 直譯程式並不會輸出可執行檔案,而是直
接一個指令一個動作,一列一列的執行程
式碼,相對的,其執行效率低,但是非常
適合在系統開發階段的程式除錯。
1-1-5 程式是如何執行-說明


程式在電腦實際執行的過程對於高階程式語言來
說,例如:BASIC或PASCAL等並非十分重要。
不過,對電腦執行程式有一定的認識,在設計程
式時仍然有十分大的助益。
不論使用高階或低階程式語言,其建立的程式最
後都會編譯成電腦看的懂的機器語言,這些指令
是CPU支援的「指令集」(Instruction Set)。
不同CPU支援不同的指令集,換句話說,雖然高
階語言有很多種,但是CPU只懂一種語言,也就
是其能執行的機器語言。
1-1-5 程式是如何執行-圖例
1-1-5 程式是如何執行-執行程式


CPU執行機器語言程式是依序將儲存在記憶體的
機器語言指令「取出和執行」(Fetch-andexecute)。
簡單的說,CPU就是從記憶體取出指令,然後執
行此指令,取出下一個指令,再執行它。CPU執
行程式的方式,如下所示:
• 電腦的主記憶體儲存機器語言的程式碼和資料。
• CPU從記憶體依序取出一個個機器語言指令,然後執
行它,CPU並非真正了解機器語言在作什麼?這只是
CPU的例行工作,依序執行機器語言指令。
1-1-5 程式是如何執行-中央處理器
(CPU)


電腦CPU提供實際運算功能,個人電腦都是使用
單晶片的「IC」(Integrated Circuit),其主
要的功能是使用「ALU」(Arithmetic and
Logic Unit)的邏輯電路進行運算,以便執行機
器語言的指令。
在CPU擁有很多組「暫存器」(Registers),暫
存器是位在CPU中的記憶體,可以暫時儲存資料
或機器語言指令,例如:執行加法指令需要2個運
算元,這兩個運算元資料就是儲存在暫存器。
1-1-5 程式是如何執行-記憶體(說明)


當我們執行程式時,作業系統可以將儲存在硬碟
或軟碟的執行檔案載入電腦主記憶體(Main
Memory),這就是CPU執行的機器語言指令,
CPU從記憶體依序載入指令和執行。
事實上,程式碼本身和使用的資料都是儲存在
RAM(Random Access Memory),每一個儲
存單位有數字編號稱為「位址」(Address)。
如同大樓信箱,門牌號碼是位址,信箱內容是程
式碼或資料,儲存資料佔用的記憶體空間大小,
需視使用的資料型態而定。
1-1-5 程式是如何執行-記憶體(存取)

電腦CPU中央處理器存取記憶體資料的主
要步驟,如下所示:
• Step 1:送出讀寫的記憶體位址:當CPU讀取
程式碼或資料時,需要送出欲取得的記憶體位
址,例如:記憶體位址4。
• Step 2:讀寫記憶體儲存的資料:CPU可以從
指定位址讀取記憶體內容,例如,位址4的內
容是01010101,換句話說,取得資料是
01010101的二進位值,每一個0或1是一個
「位元」(Bit),8個位元稱為「位元組」
(Byte),這是電腦記憶體的最小儲存單位。
1-1-5 程式是如何執行-輸入/輸出裝
置(Input/Output Devices)


電腦的輸入/輸出裝置是程式的窗口,可以
讓使用者輸入資料和顯示程式的執行結果。
目前而言,電腦最常用的輸入裝置是鍵盤
和滑鼠;輸出裝置是螢幕和列表機。
1-2 Visual Basic語言的基礎



1-2-1 BASIC程式語言
1-2-2 .NET Framework的基礎
1-2-3 什麼是Visual Basic 2005
1-2-1 BASIC程式語言-1


BASIC是在1964年由John Kemeny和Thomas
Kurtz在Dartmouth學院開發的程式語言,這是
一種非常簡單且容易學習的程式語言,其目的是
讓學生作為學習當時其他更強大程式語言
FORTRAN和ALGOL的踏腳石。
BASIC是微軟公司的第一套產品,Bill Gates和
Paul Allen從M.I.T.S取得BASIC語言的授權,在
1970年BASIC程式語言已經支援Apple、
Commodore和Atari等作業系統。隨著IBM PC
個人電腦的推廣,微軟DOS作業系統內含的
BASIC直譯程式更成為最普遍的BASIC直譯程式。
1-2-1 BASIC程式語言-2


2002年2月的VB.NET(Visual Basic.NET)是
Visual Basic 6.0的下一個版本,其最大轉變就
是成為真正的物件導向程式語言。VB.NET是支
援.NET Framework平台的微軟新一代程式語言,
可以快速建立.NET Framework 1.0和1.1版的
Windows、Web、Mobile和Office等應用程式,
共有2002和2003兩種版本。
等到2005年底推出.NET Framework 2.0版和
Visual Studio 2005,Visual Basic語言也更名
為最新版本Visual Basic 2005。
1-2-2 .NET Framework的基礎-說明


.NET Framework是微軟新世代的程式開發平台,
目前最新版本是2.0版。它是由CLR(Common
Language Runtime)和.NET Framework類
別所組成。我們可以使用.NET Framework支援
的程式語言,例如:Visual Basic 2005、C++
和C#等來建立.NET應用程式。
.NET Framework程式檔案在使用.NET編譯程
式編譯時,並不是直接編譯成CPU的機器語言,
而是一種中間程式語言稱為「MSIL」
(Microsoft Intermediate Language)。
1-2-2 .NET Framework的基礎-圖例

等到執行程式時,CLR使用「JIT」(Just In
Time)編譯程式將MSIL轉換成機器語言來執行,
其架構如下圖所示:
1-2-3 什麼是Visual Basic 2005-說
明


Visual Basic 2005是VB.NET的新版本,源於
Bill Gates對於BASIC語言的特殊淵源,BASIC
語言一直是微軟主推的程式語言。事實上Visual
Basic 2005、VB.NET、VB6、VBScript和VBA
都是使用相似的程式語法。
Visual Basic 2005仍然保留BASIC語言的主要
語法,在上一版本VB.NET新增物件導向功能和
結構化錯誤處理Try/Catch/Finally程式敘述,新
版更加強相關語法、物件導向功能和泛型程式設
計。
1-2-3 什麼是Visual Basic 2005-特
點





VB2005是真正的「物件導向程式語言」
(Object-oriented Program Language。
VB2005應用程式可以使用Windows Forms表
單來建立視窗應用程式。
VB2005能夠透過ADO.NET 2.0或使用.NET
Framework 2.0版新增的資料來源(Data
Source)來存取資料庫的記錄資料。
VB2005支援無符號資料型態、Continue敘述和
IsNot運算子,在物件導向部分支援運算子過載
(Operator Overloading)和泛型程式設計
(Generics Programming)。
VB2005可以直接使用.NET Framework函式庫
的眾多類別物件。
1-3 建立Visual Basic程式開發環境


1-3-1 什麼是Visual Studio 2005
1-3-2 安裝Visual Basic 2005 Express
1-3 建立Visual Basic程式開發環境


程式語言的「開發環境」(Development
Environment)是一組工具程式用來建立、
編譯和維護程式語言建立的應用程式。
目前的高階程式語言大都擁有整合開發環
境,稱為「IDE」(Integrated
Development Environment),在同一
個應用程式就可以編輯、編譯和執行特定
語言的應用程式。
1-3-1 什麼是Visual Studio 2005-說
明


Visual Basic 2005語言的開發環境是
Visual Studio 2005,它是微軟推出的整
合開發環境,能夠在同一套應用程式編輯、
編譯、除錯和測試Visual Basic等.NET語
言的應用程式。
Visual Studio 2005是一套支援.NET
Framework的整合開發環境,可以使用
Visual Basic 2005、C#、C++和J#等
語言來建立Windows、ASP.NET、主控台
和Web Services等各種不同的應用程式。
1-3-1 什麼是Visual Studio 2005-圖
例

在Visual Studio 2005整合開發環境建立
的應用程式是在.NET Framework的CLR
平台上執行,如下圖所示:
1-3-1 什麼是Visual Studio 2005-功
能

Visual Studio 2005提供的功能,筆者簡
單說明如下所示:
• 多種程式語言的整合開發環境
• 強大的方案與專案管理
• 提供現成的專案範本
• 視覺化表單設計介面
• IntelliSense智慧程式碼輸入
• 完整除錯功能
1-3-2 安裝Visual Basic 2005
Express-說明


Visual Basic 2005 Express是Visual
Studio產品線的擴充,微軟Express系列
提供實用和最少負擔的程式開發工具,可
以讓學生和初學者輕鬆進入Visual Studio
和.NET Framework開發平台,快速建立
所需的.NET應用程式。
在Visual Basic 2005 Express中文版包
含.NET Framework 2.0中文版和SQL
Server 2005 Express中文版,Windows
XP作業系統需要SP2以上版本才能安裝。
1-3-2 安裝Visual Basic 2005
Express-步驟







1. 請將書附光碟置入光碟機,稍等一下,就可以自動啟
動安裝程序,可以看到歡迎安裝的精靈畫面。
2. 按【下一步】鈕,可以看到軟體的使用者授權合約。
3. 勾選【我接受授權合約中的條款】同意授權,按【下
一步】鈕選擇安裝元件。
4. 請勾選全部元件,按【下一步】鈕更改安裝路徑和檢
視準備安裝的元件清單。
5. 在下方的安裝元件清單包含.NET Framework 2.0中
文版,按【安裝】鈕開始複製元件安裝Visual Basic
2005 Express。
6. 等到複製和安裝完成後,可以看到完成安裝的精靈畫
面。
7. 請按【結束】鈕完成Visual Basic 2005 Express版
的安裝。
1-4 Visual Basic 2005 Express的使
用



1-4-1 啟動Visual Basic 2005 Express
和新增專案
1-4-2 開啟與關閉專案
1-4-3 Visual Basic Express
使用介面說明
1-4-1 啟動Visual Basic 2005
Express和新增專案-啟動

請執行「開始/所有程式/Microsoft Visual
Basic 2005 Express版」指令,如為第一次啟
動需要執行數分鐘的環境設定,請稍等一下,等
到完成設定,就可以看到起始頁。
1-4-1 啟動Visual Basic 2005
Express和新增專案-新增專案

在起始頁按一下【建立】後的【專案(P)】超連結,
或是執行「檔案/新增專案」指令,就可以看到
「新增專案」對話方塊。
1-4-1 啟動Visual Basic 2005
Express和新增專案-基本介面說明
1-4-2 開啟與關閉專案


對於書附光碟現成的Visual Basic專案來說,
我們只需啟動VBE就可以直接開啟專案,
如果已經開啟專案,也可以隨時開啟其他
Visual Basic專案。
事實上,VBE在同一個方案能夠擁有多個
專案,因為目前我們建立的方案都只擁有
一個專案,讀者可以將方案視同專案來處
理。
1-4-3 Visual Basic Express使用介
面說明-起始頁

在VBE的起始頁包含三大部分,可以新增或開啟
專案和顯示最近曾開啟的專案清單、使用者入門
和MSDN最新資訊,如下圖所示:
1-4-3 Visual Basic Express使用介
面說明-功能表列
選單
檔案
編輯
檢視
專案
建置
偵錯
資料
工具
視窗
社群
說明
說明
開啟、新增、儲存或關閉專案指令,或是開啟檔案,在目前在方
案加入專案等相關指令
提供編輯所需的剪貼簿、搜尋和取代等相關指令
可以切換顯示開發工具各種視窗或工具列等相關指令
屬於專案管理的相關指令,可以在專案加入 Windows Form、使用
者控制項、模組、類別和參考等項目
提供建置方案,即編譯和執行方案的相關指令
提供程式碼除錯功能的相關指令,同時可以執行專案
可以加入資料來源,以便提供應用程式的資料庫支援
可以連接資料庫、管理程式碼片斷、巨集、自訂開發環境和選項
設定等相關指令
提供視窗排列和切換顯示視窗的相關指令
可以線上傳送意見和詢問問題
Visual Studio 2005 線上輔助說明文件的相關指令
1-4-3 Visual Basic Express使用介
面說明-主工具列

在主視窗功能表的下方是主工具列,提供
與功能表列相同功能的圖示按鈕,預設提
供標準工具列,擁有開啟、儲存檔案、剪
貼簿、執行和切換顯示各程視窗等功能按
鈕。
1-4-3 Visual Basic Express使用介
面說明-工具箱視窗1

VBE左邊的「工具箱」視窗提供表單設計視窗所
需的控制項、元件和資料等。如果視窗最左邊沒
有看到【工具箱】標籤,請執行「檢視/工具箱」
指令顯示工具箱標籤,如下圖所示:
1-4-3 Visual Basic Express使用介
面說明-工具箱視窗2

Visual Basic專案的各區段標籤說明,如下所示:
• 所有Windows Form:顯示所有支援的控制項物件。
• 通用控制項:建立輸入與輸出使用者介面的相關控制
項。
• 容器:擁有其他控制項的容器控制項,可以用來群組
控制項。
• 功能表與工具列:建立視窗的功能表與工具列。
• 資料:ADO.NET的DataSet物件和建立資料來源的相
關控制項。
• 元件:顯示可以加入設計工具的元件。除了.NET
Framework元件 外,也可以將自己或協力廠商的元件
加入此標籤。
• 列印:列印相關功能的控制項。
• 對話方塊:建立對話方塊的相關控制項。
• 一般:可以用來儲存拖曳自專案的自訂控制項。
1-4-3 Visual Basic Express使用介
面說明-方案總管視窗

VBE的「方案總管」視窗是應用程式專案
的管理視窗,可以顯示目前方案中的專案
清單,在專案項目下是相關的檔案清單,
如下圖所示:
1-4-3 Visual Basic Express使用介
面說明-屬性視窗

在「屬性」視窗可以表單或控制項物件的
相關屬性,在上方欄位顯示的是選取物件,
下方顯示此物件的屬性清單,如下圖所示:
1-4-3 Visual Basic Express使用介
面說明-表單設計或程式碼編輯視窗1

VBE開發環境的最主要部分是表單設計和
程式碼編輯視窗,以此例【Form1.vb[設
計]】標籤是表單設計視窗,如下圖所示:
1-4-3 Visual Basic Express使用介
面說明-表單設計或程式碼編輯視窗2

程式碼視窗的上方標籤並沒有【設計】字
樣,例如:開啟表單Form1.vb的程式碼,
請執行「檢視/程式碼」指令或按F7鍵,就
可以看到程式碼編輯視窗,如下圖所示: