本書以Visual Studio 2015版的開發環境為主線,采用實例探析、拓展訓練相結合,由淺入深地介紹了VB.NET開發環境和編程方法。本書的主要內容包括Visual Basic 2015編程概述;Visual Basic 2015的語言基礎;數組;過程的應用;結構化程序設計語句(語法規則、數據類型、變量、控制結構等);程序調試和異常處理;Windows窗體與控件;Windows高級界面設計;面向對象的程序設計;圖形與多媒體控件程序;綜合數據庫編程。每章均有典型的實例探析和拓展訓練,以提供教師演示和學生進階練習。本書可以在Windows 10操作系統、Visual Studio 2015和SQL Server 2010環境下講解,也完全可以運行在Visual Studio 2010和SQL Server 2005環境下。本書理論框架嚴實、概念清晰、重點突出、實例典型,貼近實際,符合教師教學和學生編程學習,是一本非常適合課堂教學,用Visual Basic 2015語言開發的程序設計應用教材。本書可作為高等學校計算機類相關專業教材,同樣適合作為高職高專院校計算機類相關專業的教材,也可作為軟件編程開發人員的技術參考書。
前 言
本書以專業人才培養為目標,突出操作實踐性,全面系統地介紹了VB.NET 2015高級編程技術的方法與技能。全書共有11章:第1章講解Visual Basic 2015編程概述,讓初學者了解VB.NET的開發概況;第2章講解Visual Basic 2015的語言基礎,集成化與可視化編程環境,對象、屬性、事件及方法的基本概念;第3章以典型實例講解數組的應用;第4章通過領柚子問題、招考成績統計器、客戶通訊錄、抽獎箱等案例學習過程的應用;第5章通過雙11優惠方案、球類用品采購方案、身體質量指數測試、話費計算程序等案例學習結構化程序設計基礎(包含語法規則、數據類型、變量、控制結構等);第6章講解程序調試和異常處理;第7章通過服飾選購統計程序、計時器的實現、豐田系列車配置選擇、賽車程序的實現、途牛旅游調查、模擬彩票等實例學習Windows窗體與控件;第8章通過社區管理系統多界面的實現、瀏覽器的實現、圖像編輯器、高級記事本應用、文件編輯器等典型實例講解Windows高級界面設計的知識;第9章通過判定三角形、猜一猜數字來學習面向對象的程序設計;第10章通過MP3媒體播放器、顏色漸變器的實現、繪圖板的設計等實例學習圖形與多媒體程序設置;第11章通過VB.NET開發學生選課管理系統、超市管理系統等開發實戰項目講解綜合數據庫編程新技術、新知識的應用。本書的任務是讓讀者積累用VB.NET 2015進行應用程序實際開發的經驗,提升讀者項目開發的能力。
在編寫思路上,基于理論提煉、實例驅動、拓展訓練的教學理念,對本書各部分編排層次清晰,難度深度適中,通過剖析實例來介紹各章節核心知識,使讀者加深對基礎知識的掌握,通過拓展訓練模塊強化訓練,使讀者可以掌握基于Windows操作系統的應用程序的開發方法,并為進一步學習其他面向對象的程序設計語言(如VC 、C#、JSP、ASP.NET等)夯實基礎。
本書的主要特點如下。
1.平臺升級,技術新穎
把開發平臺升級到Visual Studio 2015,使用的語言升級到VB.NET 2015。改變過于陳舊、冗余、老套的數據庫編程方法,發揮.NET數據庫控件編程與網絡編程的優勢,增加新知識、新技術應用。
2.典型實例,貼近實際
針對學生的學習特點,各章節理論分析通俗易懂、敘述精練、邏輯分明、圖文結合,并通過實例探析模塊豐富學習,實例貼近生活實際,使學生可以熟練掌握,學以致用并進行編程技巧遷移。
3.經驗結合,拓展訓練
結合教學理念與多位教師的教學經驗,通過拓展訓練模塊提高編程效率與技巧,引用最新的.NET數據訪問技術,結合VB.NET開發選課管理系統、VB.NET開發超市管理系統詳細剖析VB.NET中綜合數據庫高級編程的技術。
4.注釋詳盡,視頻輔助
書中所有的代碼都提供了注釋講解,配套資源中提供了數據庫編程開發實例的視頻講解,讀者可以通過視頻快速、高效、容易地學習。
本書由工作在一線教學崗位的高校教師編寫,具有多年的高校計算機教學經驗,了解學生的學習特點以及學習可能遇到的問題,書中突顯了重點和難點,針對編程部分還增加了代碼解釋。本書可作為高等學校計算機類相關專業教材,同樣適合作為高職高專院校計算機類相關專業的教材,也可作為軟件編程開發人員的技術參考書。教學參考學時為60~72學時。
本書第1、2、10、11章由陳惠娥編寫,第3、4、7、8章由胡安明編寫,第5、6、9章由陳亞輝編寫。信息與傳媒學院計科組教授參與指導了各章的拓展訓練部分,在此表示感謝。本書的編寫得到了電子工業出版社的大力支持,全書由劉瑞新教授認真指導修改并定稿,冉哲編輯在實例探析的寫作思路上給予了寶貴的建議,在此表示誠摯的謝意。由于作者水平所限,本書難免存在疏漏和不足之處,敬請廣大讀者批評指正。
為了方便教師授課及讀者的學習,本書提供了電子教案、源代碼等,登錄華信教育資源網(www.hxedu.com.cn)注冊后免費下載。
編 者
劉瑞新,教授,現就職于北京信息職業技術學院(東校區)軟件工程系。我社老作者,具有多年寫作經驗,在我社出版過30多本教材。
目 錄
第1章 Visual Basic 2015編程概述1
1.1 理論知識1
1.1.1 VB.NET語言及其發展簡介1
1.1.2 Visual Studio 2015集成開發環境的使用2
1.2 實例探析6
1.2.1 【實例1】創建第一個Windows程序6
1.2.2 【實例2】創建第一個控制臺程序7
1.2.3 【實例3】求-6的絕對值7
1.3 拓展訓練8
1.3.1 【任務1】實現兩數的四則運算8
1.3.2 【任務2】輸出圖案應用程序9
1.3.3 【任務3】默寫詩句應用程序10
1.3.4 【任務4】btnShow_Click()和btnExit_Click()的應用11
第2章 Visual Basic 2015的語言基礎12
2.1 理論知識12
2.1.1 變量、常量與數據類型12
2.1.2 常量13
2.1.3 基本數據類型13
2.1.4 常用函數15
2.1.5 程序結構和編碼規則17
2.2 實例探析18
2.2.1 【實例1】InputBox函數的應用18
2.2.2 【實例2】利息計算器19
2.2.3 【實例3】取整取余算術運算的應用20
2.2.4 【實例4】實現百位數的分離22
2.2.5 【實例5】判斷星座的程序23
2.2.6 【實例6】估測身高的實現26
2.3 拓展訓練27
2.3.1 【任務1】圓錐計算應用程序27
2.3.2 【任務2】MsgBox函數的應用29
2.3.3 【任務3】球面積與體積計算程序30
2.3.4 【任務4】奇偶數選擇器31
2.3.5 【任務5】簡易計算器應用程序33
第3章 數組41
3.1 理論知識41
3.1.1 數組的概念41
3.1.2 一維數組的定義、初始化及數組元素的引用41
3.1.3 二維數組的定義、初始化及數組元素的引用43
3.1.4 數組重定義44
3.1.5 For Each語句、LBound函數及UBound函數的使用44
3.2 實例探析45
3.2.1 【實例1】一維數組的綜合應用46
3.2.2 【實例2】問卷調查表的實現48
3.2.3 【實例3】隨機數組的添加、查找與刪除操作52
3.2.4 【實例4】隨機矩陣及其運算55
3.3 拓展訓練57
3.3.1 【任務1】二維數組的最值實現57
3.3.2 【任務2】隨機搖獎器59
3.3.3 【任務3】上三角與下三角數組的輸出60
3.3.4 【任務4】任意行列矩陣的加減法運算62
3.3.5 【任務5】選擇排序64
3.3.6 【任務6】轉置二維數組并實現求和、平均值與奇偶數65
第4章 過程的應用68
4.1 理論知識68
4.1.1 過程的概念與分類68
4.1.2 子過程(Sub過程)的定義與調用68
4.1.3 函數過程(Function過程)的定義與調用71
4.1.4 參數的傳遞72
4.1.5 可選參數和可變參數74
4.1.6 變量和過程的作用域75
4.2 實例探析76
4.2.1 【實例1】Sub過程的應用76
4.2.2 【實例2】比較全局變量、局部變量與靜態變量78
4.2.3 【實例3】領柚子問題的實現79
4.2.4 【實例4】比較按值與按址傳遞81
4.2.5 【實例5】比較有參傳遞與無參傳遞的Sub過程83
4.3 拓展訓練84
4.3.1 【任務1】Function過程的實現84
4.3.2 【任務2】比較Sub與Function遞歸過程的實現85
4.3.3 【任務3】Sub與Function統計You的個數87
4.3.4 【任務4】招考成績統計器88
4.3.5 【任務5】客戶通訊錄90
4.3.6 【任務6】抽獎箱的實現92
第5章 結構化程序設計語句95
5.1 理論知識95
5.1.1 順序結構95
5.1.2 選擇控制結構96
5.1.3 循環控制語句99
5.1.4 其他輔助控制語句101
5.2 實例探析101
5.2.1 【實例1】計算三角形面積101
5.2.2 【實例2】雙11優惠方案103
5.2.3 【實例3】球類用品采購方案105
5.2.4 【實例4】體積計算器107
5.2.5 【實例5】從1~n任意整數中找出與15的倍數關系108
5.3 拓展訓練110
5.3.1 【任務1】華氏/攝氏溫度轉換器110
5.3.2 【任務2】身體質量指數測試111
5.3.3 【任務3】模擬袖珍計算器112
5.3.4 【任務4】話費計算程序114
第6章 程序調試和異常處理118
6.1 理論知識118
6.1.1 VB.NET程序中錯誤的類型118
6.1.2 應用程序的3種工作模式119
6.1.3 使用調試工具調試程序120
6.1.4 VB.NET中常用的調試窗口121
6.1.5 異常處理123
6.1.6 結構化異常處理123
6.1.7 非結構化異常處理124
6.2 實例探析127
6.2.1 【實例1】除法器異常處理127
6.2.2 【實例2】加法器異常處理129
6.2.3 【實例3】乘法器異常處理131
6.3 拓展訓練132
6.3.1 【任務1】驗證身份證號132
6.3.2 【任務2】測試n/0調試異常133
6.3.3 【任務3】簡單計算器調試與異常處理134
第7章 Windows窗體與控件137
7.1 窗體137
7.1.1 窗體的概述137
7.1.2 文本類控件的應用138
7.1.3 命令按鈕類控件的應用142
7.1.4 列表類與組合類控件的應用143
7.1.5 進度條與滾動條控件的應用145
7.1.6 時鐘、日期、月歷控件的應用145
7.1.7 圖像控件的應用147
7.2 實例探析148
7.2.1 【實例1】控件的綜合應用148
7.2.2 【實例2】窗體與圖像的變化151
7.2.3 【實例3】圖像顯示隱藏與切換交換的應用154
7.2.4 【實例4】服飾選購統計程序156
7.3 拓展訓練160
7.3.1 【任務1】計時器的實現160
7.3.2 【任務2】豐田系列車配置選擇161
7.3.3 【任務3】選舉投票的實現163
7.3.4 【任務4】賽車程序的實現165
7.3.5 【任務5】圖像自動切換的實現167
7.3.6 【任務6】途牛旅游調查168
7.3.7 【任務7】模擬彩票170
第8章 Windows高級界面設計173
8.1 理論知識173
8.1.1 VB.NET中的菜單173
8.1.2 MenuStrip控件的屬性、事件和方法174
8.1.3 彈出式菜單與菜單基本操作176
8.1.4 工具欄的應用179
8.1.5 狀態欄的應用180
8.1.6 MDI窗體的應用181
8.1.7 對話框控件的應用183
8.2 實例探析190
8.2.1 【實例1】登錄界面多窗體的實現191
8.2.2 【實例2】社區管理系統多界面的實現192
8.2.3 【實例3】進制轉換器194
8.2.4 【實例4】多文本文件MDI菜單的實現197
8.2.5 【實例5】瀏覽器的實現200
8.3 拓展訓練204
8.3.1 【任務1】圖片瀏覽器的制作204
8.3.2 【任務2】看圖學英語程序207
8.3.3 【任務3】圖像編輯器209
8.3.4 【任務4】右鍵快捷菜單實現卡通圖片切換213
8.3.5 【任務5】高級記事本應用215
8.3.6 【任務6】文件編輯器218
第9章 面向對象的程序設計227
9.1 理論知識227
9.1.1 面向對象程序設計的基本思想與方法227
9.1.2 命名空間228
9.1.3 類與對象229
9.1.4 方法與方法重載234
9.1.5 類的構造函數與析構函數235
9.1.6 類的繼承與編程實現236
9.2 實例探析242
9.2.1 【實例1】類的創建與調用242
9.2.2 【實例2】類繼承與重寫244
9.2.3 【實例3】類的多重調用245
9.2.4 【實例4】判定三角形247
9.3 拓展訓練250
9.3.1 【任務1】猜一猜數字250
9.3.2 【任務2】類繼承求圓柱三積251
9.3.3 【任務3】窗體繼承求階乘253
9.3.4 【任務4】類繼承求面積255
第10章 圖形與多媒體控件程序257
10.1 理論知識257
10.1.1 GDI 基礎257
10.1.2 GDI 繪圖的過程259
10.1.3 GDI 繪圖工具260
10.1.4 基本圖形繪制方法264
10.1.5 VB.NET中的多媒體控件268
10.1.6 AxWindowsMediaPlayer控件屬性與方法268
10.1.7 AxMMControl控件屬性與事件270
10.1.8 AxShockwaveFlash控件屬性與方法271
10.2 實例探析272
10.2.1 【實例1】MP3媒體播放器272
10.2.2 【實例2】顏色漸變器的實現275
10.2.3 【實例3】繪圖板的設計277
10.3 拓展訓練282
10.3.1 【任務1】文字特效282
10.3.2 【任務2】色彩調節284
10.3.3 【任務3】模擬雨珠的實現288
第11章 綜合數據庫編程290
11.1 理論知識290
11.1.1 數據庫的基本概念290
11.1.2 VB.NET數據訪問技術290
11.1.3 ADO.NET對象295
11.1.4 ADO.NET數據控件298
11.2 實例探析學生選課管理系統301
11.2.1 學生選課管理系統301
11.2.2 學生管理數據庫313
11.3 拓展訓練314
11.3.1 【任務1】超市管理系統314
11.3.2 超市管理數據庫326
參考文獻328