版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、1,Visual Basic.NET 程序設(shè)計教程,2,第一章 VB.NET基礎(chǔ) 第二章 簡單的VB.NET程序設(shè)計 第三章 VB.NET語言基礎(chǔ) 第四章 基本的控制結(jié)構(gòu) 第五章 數(shù) 組 第六章 過 程 第七章 用戶界面設(shè)計 第八章 面向?qū)ο蟪绦蛟O(shè)計基礎(chǔ) 第九章 文 件 第十章 圖形應(yīng)用程序開發(fā) 第十一章 數(shù)據(jù)庫應(yīng)用程序開發(fā),目 錄,3,第一章 VB.NET基礎(chǔ),1.1 VB.NET概述 1.2 VB.NET集成開發(fā)環(huán)境 1.3 使用幫助系統(tǒng),本章目錄,4,1.1 VB.NET概述,1.1.1 Visual Basic的發(fā)展 20世紀60年出現(xiàn)Basic語言; 20世紀80年代,True Ba
2、sic、Quick Basic和Turbo Basic等; 1991年Microsoft公司推出Visual Basic1.0,以可視化工具為界面設(shè)計、結(jié)構(gòu)化Basic語言為基礎(chǔ),以事件驅(qū)動為運行機制。從1991年的VB1.0至1998年的V B6.0的多次版本升級,功能更強大、完善,應(yīng)用面更廣; 2002年正式發(fā)布Visual Basic.NET。,本章目錄,5,1.1.2 Microsoft.NET概述,什么是.NET? . NET代表了一個集合、一個環(huán)境、一個編程的基本結(jié)構(gòu),作為一個平臺來支持下一代的Internet。 .NET也是一個用戶環(huán)境,是一組基本的用戶服務(wù),可以作用于客戶端、服
3、務(wù)器或任何地方 。 對初學(xué)VB的人來說,可以這樣認為,.NET就是Visual Studio.NET。,本章目錄,6,Visual Studio.NET,本章目錄,7,1.1.3 VB.NET特點,1 引例 例1.1簡單的動畫演示。 一行文字“歡迎使用VB.NET”在具有背景圖案的窗體中上、下移動。 移動方法有兩種:單擊手動按鈕,移動5個像素單位 ;單擊自動按鈕,按定時器觸發(fā)頻率連續(xù)移動;當(dāng)內(nèi)容超出窗體范圍時,進行反彈。,本章目錄,8,引例,根據(jù)要求,用工具箱上的Label、Button、Timer等控件,在窗體上建立控件對象,進行有關(guān)的屬性設(shè)置。,本章目錄,9,引例:編寫事件過程,本章目錄,
4、10,提供了易學(xué)易用的應(yīng)用程序集成開發(fā)環(huán)境 具有面向?qū)ο蟮目梢暬O(shè)計工具 事件驅(qū)動的編程機制 支持結(jié)構(gòu)化程序設(shè)計,具有面向?qū)ο蟪绦蛟O(shè)計語言的所有特征 具有豐富的數(shù)據(jù)類型、功能強大的類庫 強大的數(shù)據(jù)庫功能 網(wǎng)絡(luò)功能 完備的幫助功能,VB.NET功能特點,本章目錄,11,1.2 VB.NET的集成開發(fā)環(huán)境,1.2.1進入VB.NET,啟動Visual Studio.NET “起始頁”選擇“新建項目/打開項目”按鈕,Visual Basic項目,Windows應(yīng)用程序,本章目錄,12,VB.NET集成開發(fā)環(huán)境,本章目錄,13,1.2.2主窗口,三種工作模式 設(shè)計模式 界面的設(shè)計和代碼的編制 運行模式
5、 運行應(yīng)用程序 中斷模式 暫時中斷程序運行,調(diào)試程序 2. 菜單欄 包括11個下拉菜單 3. 工具欄,本章目錄,14,1.2.3 窗體設(shè)計/代碼設(shè)計窗口,1.窗體設(shè)計器窗口 建立VB.NET應(yīng)用程序的界面(一個應(yīng)用程序可以有多個窗體,通過“項目|添加Windows窗體”命令增加新窗體)。 2.代碼設(shè)計窗口 專門用來進行代碼設(shè)計,包括各種事件過程、過程和類等源程序代碼的編寫和修改。 打開代碼設(shè)計窗口的方法:雙擊窗體、控件或單擊代碼窗口上方的選項卡組對應(yīng)項。,本章目錄,15,1.2.4 屬性窗口,窗體和控件稱為對象,每個對象用一組屬性來描述其外部特征,如顏色、大小等。 屬性窗口用于顯示和設(shè)置所選定
6、的對象的屬性。 屬性窗口由四部分組成: 對象和名稱空間列表框 屬性顯示排列方式 屬性列表框 屬性含義說明,本章目錄,16,1.2.5 解決方案資源管理器窗口,項目 一個獨立的編程單位(包含窗體文件及其他一些相關(guān)文件),若干項目組成一個解決方案 解決方案可以含有以下類型的文件: 解決方案文件(.sln) 可包括用不同語言開發(fā)的項目 項目文件(.vbproj) 由引用的組件和代碼模塊組成 代碼模塊文件(.vb) 包括窗體文件、類模塊或其他代碼文件,本章目錄,17,1.3 使用幫助系統(tǒng),動態(tài)幫助 屬性窗口“動態(tài)幫助”標(biāo)簽卡內(nèi) 索引 使用上下文相關(guān)的幫助 按“F1”鍵 網(wǎng)絡(luò)資源 通過,本章目錄,18,
7、本章小節(jié),Visual Studio.NET 一個支持下一代Internet的平臺 VB.NET的三種工作模式 設(shè)計模式、運行模式、中斷模式 組成,本章目錄,解決方案,項目,組件和代碼模塊,項目,組件和代碼模塊,19,第二章 簡單的VB.NET程序設(shè)計,2.1 VB.NET對象的概念 2.2 建立簡單的應(yīng)用程序 2.3 窗體和基本控件 2.4 綜合應(yīng)用,本章目錄,20,2.1 Visual Basic對象的概念,2.1.1 對象和類 1.對象 對象就是日常生活中的某個實在的物體 例如,一個人、一輛汽車、一臺電腦。 對象都具有各自的特征(屬性)、行為(方法) 。 人有身高、體重、聽力等特征;也具
8、有起立、行走、說話、踢足球等行為。 在VB.NET中,將反映對象的屬性和行為封裝在一起,是面向?qū)ο缶幊痰幕驹亍?本章目錄,21,2.類的概念,類 同種對象的集合與抽象,是創(chuàng)建對象實例的模板,包含所創(chuàng)建對象的屬性描述和行為特征的定義。 例如,人類是具體人的抽象。每個人有不同的身高、體重等屬性值和不同的行為。 VB.NET工具箱中的可視圖標(biāo)是VB.NET系統(tǒng)設(shè)計好的標(biāo)準(zhǔn)控件類。通過將控件類實例化,得到真正的控件對象。在窗體上畫一個控件,就將類轉(zhuǎn)換為對象,創(chuàng)建了一個控件對象(簡稱控件)。,本章目錄,22,例如:工具箱內(nèi)的TextBox是類(它確定了TextBox的屬性、方法和事件) 窗體上顯示的
9、是兩個Text對象,本章目錄,23,屬性、事件和方法構(gòu)成對象的三要素 1. 屬性 存放對象的數(shù)據(jù)(決定對象外觀及功能) 例如,控件名稱、文本、大小等屬性。 對象屬性的設(shè)置方法: 設(shè)計階段 利用屬性窗口直接設(shè)置屬性值 程序運行時 通過語句對象名.屬性名=屬性值 例如:Button1.Text = 確定 注意:若屬性只能在設(shè)計階段設(shè)置,在程序運行階段不可改變,稱為只讀屬性。,2.1.2 對象的屬性、事件和方法,本章目錄,24,事件 發(fā)生在對象上的事情 同一事件,對不同的對象,會引發(fā)不同的反應(yīng):,事件,本章目錄,教師_鈴聲() 講課 End Sub,學(xué)生_鈴聲() 聽講 接受知識 End Sub,V
10、B.NET為對象預(yù)先定義了一系列的事件。例如,單擊Click、獲取焦點GotFocus 、按下鍵盤KeyPress 等,其他人員_鈴聲() 可不響應(yīng) End Sub,25,事件過程 應(yīng)用程序處理事件的步驟 它針對某一對象并與該對象的一個事件相聯(lián)系 應(yīng)用程序設(shè)計的主要工作就是為對象編寫事件過程的代碼。事件過程的形式如下: Sub 對象名_事件(對象引用,事件信息)Handles 事件處理程序 事件過程代碼 End Sub 對象引用:指向引發(fā)事件的對象 事件信息:與事件相關(guān)的信息,事件過程,本章目錄,26,例2.1 在命令按鈕的Click事件過程,改變按鈕的字體顏色. 代碼說明 注意:在代碼窗,自
11、動產(chǎn)生事件過程的模板,不要修改模板的內(nèi)容,只需鍵入過程的代碼。 一個動作可能同時發(fā)生多個事件。例如單擊鼠標(biāo)同時發(fā)生了: Click、MouseDown、MouseUp事件 編程時,只要對需要的事件過程編碼,無編碼的事件為空事件,系統(tǒng)就不處理該事件過程。,本章目錄,27,事件驅(qū)動程序設(shè)計方式: 程序執(zhí)行的先后次序與程序設(shè)計者無關(guān),取決于用戶的操作。 VB.NET程序的執(zhí)行步驟: 啟動應(yīng)用程序,裝載和顯示窗體; 窗體(或窗體上的控件)等待事件的發(fā)生; 事件發(fā)生時,執(zhí)行對應(yīng)的事件過程; 重復(fù)執(zhí)行步驟和。,事件驅(qū)動程序設(shè)計,本章目錄,28,方法,面向?qū)ο蟮某绦蛟O(shè)計語言,為程序設(shè)計人員提供了一種特殊的過
12、程和函數(shù),稱為方法。 方法是面向?qū)ο蟮模{(diào)用時一定要指明對象。對象方法的調(diào)用格式為: 對象.方法 參數(shù)名表 若省略對象,表示當(dāng)前對象,一般指窗體。 例如:Textbox1.Focus 此語句使Textbox1控件獲得焦點,光標(biāo)在本文框內(nèi)閃爍。,本章目錄,29,2.2 建立簡單的應(yīng)用程序,例2.2 編寫一個人民幣與美圓兌換的程序。 建立一個應(yīng)用程序分為以下幾步進行: (1) 建立用戶界面的對象 (2) 對象屬性的設(shè)置 (3) 對象事件過程及編程 (4) 保存和運行程序,本章目錄,代碼說明,30,對象事件過程及編程,代碼窗口的對象列表框可顯示窗體所有對象 過程列表框列出所選中對象的所有事件 例如,
13、在按鈕Button2的Click事件加入代碼: Sub Button2_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles Button2.Click TextBox1.Text = Val(TextBox3.Text) * Val(TextBox2.Text) End Sub Val( )函數(shù) 將數(shù)字字符轉(zhuǎn)換成數(shù)值型,本章目錄,31,保存程序和文件組成,程序存盤后將建立一個文件夾,包含如下內(nèi)容: (1)xxx.sln 項目關(guān)聯(lián)、配置等的信息 (2) xxx.suo 開發(fā)環(huán)境選項的信息 (3)
14、xxx.vbproj 項目文件 (4)Form1.vb 窗體文件 (5)AssemblyInfo.vb 項目集合信息(系統(tǒng)自動建立) (6) xxx.exe 可執(zhí)行文件(在Bin文件夾) (7)Bin文件夾 可執(zhí)行文件的默認路徑, 可用Application.StartupPath()獲得該路徑。 (8)Debug 文件夾 存放程序調(diào)試產(chǎn)生的信息,本章目錄,32,2.3 窗體和基本控件,2.3.1 通用屬性 屬性設(shè)置兩種方式: 通過屬性窗口設(shè)置 在代碼設(shè)計窗口通過代碼來設(shè)置 在VB.NET中,屬性的類型有: 基本數(shù)據(jù)類型 枚舉類型 結(jié)構(gòu)類型 用代碼設(shè)置時,需要用不同方式表示不同的類型,本章目錄
15、,33,2.3.1 通用屬性,(1) Name 所有對象都具有的屬性,表示所創(chuàng)建的對象名稱。在程序中通過對象名稱來引用對象,不會顯示在窗體上。 (2) Text 用于在窗體上顯示對象的文本 TextBox控件的Text還可以獲取輸入信息,本章目錄,34,(3) 控件布局屬性 控件布局由Location、Size結(jié)構(gòu)來實現(xiàn),它們各有一對整數(shù)來表示,整數(shù)單位為像素。 Location 控件左上角位置, Size 控件大小 例如,命令按鈕控件布局 Button1.Location = New Point(88, 48) Button1.Size = New Size(80, 32) 也可用Left、
16、Top定位;用Width和Height來表示控件的寬度和高度。,本章目錄,等效的語句設(shè)置: Button1.Left = 88 Button1.Top = 48 Button1.Width = 80 Button1.Height = 32,35,(4) Font 屬性值是Font類的對象,一般通過Font屬性對話框設(shè)置,若在程序代碼中需要改變文本的外觀,則應(yīng)通過New創(chuàng)建 Font 對象來改變字體。 例如:,Label1.Font = New System.Drawing.Font(Arial, 10),本章目錄,36,(5) ForeColor、BackColor 顏色屬性 ForeColo
17、r 控件正文前景色 BackColor 背景色 (6) Cursor 指示鼠標(biāo)光標(biāo)圖像 設(shè)置值是一個Cursors枚舉類型的枚舉值。若要用戶定義自己的指針圖標(biāo),可通過如下語句實現(xiàn): 對象名.Cursor = New System.Windows.Forms.Cursor(圖標(biāo)文件名),本章目錄,37,(7) Dock 控件放置靠窗體邊框的位置,屬性值是DockStyle枚舉類型,有六個枚舉值 (8) Enabled、Visible 控件的有效、可見性,本章目錄,(9) TabIndex 按Tab鍵時,焦點在各個控件移動的順序,38,2.3.2 窗體,窗體是一塊畫布,是所有控件的容器,可以根據(jù)需
18、要利用工具箱上的控件在窗體上畫界面。 1. 主要屬性,本章目錄,39,窗體-屬性,(1) MaxButton、MinButton 設(shè)置為True,窗體上有最大(小)化按鈕;為False時無最大(小)化按鈕 (2) Icon、ControlBox 窗體圖標(biāo)、控制菜單 ControlBox 屬性為True,窗體上有控制菜單框;為False時無控制菜單(系統(tǒng)將MaxButton和MinButton自動設(shè)置為False) (3) BackgroundImage 窗體背景圖案 (4) FormBorderStyle 窗體的邊框類型,本章目錄,40,窗體-事件,最常用的事件有Click、DblClick和
19、Load Load事件 窗體裝入內(nèi)存時觸發(fā)(應(yīng)用程序啟動時自動執(zhí)行該事件),常用來在啟動時對屬性和變量初始化。 例2.3 編寫三個事件過程,要求如下: 啟動窗體,在標(biāo)題欄顯示“裝入窗體”,并將#bmp作為背景圖平鋪窗體、窗體邊框為Fixed3D; 單擊窗體,標(biāo)題欄顯示對應(yīng)的文字、裝入tongji-2.bmp圖片大小為264256,要求圖片正好充滿窗體。 雙擊窗體,標(biāo)題欄顯示對應(yīng)的文字、窗體無最大化和最小化按鈕,清除裝入的圖片。,代碼說明,本章目錄,41,窗體-方法,使用方法的語法形式: 對象.方法參數(shù)列表 窗體方法主要有 ShowDialog 、Show、Hide等,主要用于多窗體
20、的顯示和隱藏等 例如:Me.Hide,本章目錄,42,2.3.3 標(biāo)簽-屬性,標(biāo)簽用來顯示文本信息(不能輸入) 除Name、Font、Size、Location、Enable等屬性外,其它主要屬性: (1)Text、TextAlign:設(shè)置顯示的文本、文本的對齊方式,TextAlign 屬性是枚舉類型,提供標(biāo)簽控件上文本的9種對齊方式,本章目錄,43,(2) BackColor 背景色(默認與窗體背景相同)。若要以透明方式顯示,需要設(shè)置Color枚舉類型的Transparent。 (3) BorderStyle 標(biāo)簽控件邊框樣式 None 控件周圍沒有邊框(默認值) FixedSingle 控
21、件帶有單邊框 Fixed3D 控件帶有立體邊框 (4) AutoSize 控件是否能自動調(diào)整大小 當(dāng)值為False,保持控件原設(shè)計時的大小,正文若太長則顯示其中的一部分。,本章目錄,44,(5) Image、ImageAlign 設(shè)置控件的背景圖案和圖案對齊方式 ImageAlign屬性與TextAlign類似 通過代碼設(shè)置圖案: 標(biāo)簽名.Image = Image.FromFile(圖片名) 例2.4 在4個標(biāo)簽中存放4個方向的“手指”圖片,當(dāng)單擊某方向時,利用“Dock”屬性定位第5個標(biāo)簽、并顯示相關(guān)信息。,代碼說明,本章目錄,45,2.3.4 文本框,文本框是一個文本編輯區(qū)域,可以在該區(qū)
22、域輸入、編輯、修改和顯示正文內(nèi)容。 (1) Text 顯示或輸入的正文內(nèi)容 (2) Maxlength 設(shè)置文本框可輸入的文字最大長度。默認值為0,表示可以輸入任意長字符串。 注意:在VB.NET中字符長度以字為單位,也就是一個西文字符與一個漢字都是一個字,長度為1。,本章目錄,46,(3) MultiLine 多行屬性 設(shè)置為True時,文本框可以輸入或顯示多行正文,同時具有文字處理器的自動換行功能,按Enter鍵可插入一空行。 (4) ScrollBars 滾動條屬性 None 無滾動條 Horizontal 水平滾動條 Vertical 垂直滾動條 Both 同時加水平和垂直滾動條 當(dāng)M
23、ultiLine為True時,ScrollBars才有效,本章目錄,47,(5) PassWordChar 設(shè)置顯示文本的替代符。例如,當(dāng)設(shè)置為“*”,則在文本框輸入的內(nèi)容均以“*”顯示,而存儲的值是用戶輸入的原文。一般用于設(shè)置口令的輸入。 當(dāng)MultiLine為True時,該屬性不起作用,密碼不允許多行。 (6) ReadOnly 指定文本控件是否可被編輯,默認值為False(可編輯),當(dāng)設(shè)置為True時,文本控件相當(dāng)于標(biāo)簽控件的作用。,本章目錄,48,(7)文本內(nèi)容進行選擇操作 SelectionStart 選定的正文開始位置 SelectionLength 選定的正文長度 Selecte
24、dText 選定的正文內(nèi)容 設(shè)置SelectionStart和SelectionLength屬性后, SelectedText 會自動存放設(shè)定的正文 例2.5 利用屬性實現(xiàn)對文本信息的剪切、拷貝、粘貼等功能。,本章目錄,代碼說明,49,文本框-事件,(1) TextChanged事件 當(dāng)Text屬性值發(fā)生改變時引發(fā)該事件 例 在文本框每輸入一個字符就引發(fā)一次事件 (2) KeyPress事件 按下并且釋放鍵盤上的一個鍵時,引發(fā)焦點所在控件的KeyPress事件,所按鍵的值存放在參數(shù)e.KeyChar中 例 對回車的判斷 Asc(e.KeyChar)=13,本章目錄,50,(3) LostFoc
25、us事件 對象失去焦點時發(fā)生LostFocus事件 該事件主要是用來對數(shù)據(jù)進行驗證和確認,常用于檢查Text屬性的內(nèi)容。 (4) GotFocus事件 GotFocus事件與LostFocus事件相反,當(dāng)一個對象獲得焦點時發(fā)生,本章目錄,51,文本框-方法,文本框最有用的方法是Focus,把光標(biāo)移到指定的文本框中。其形式如下: 對象. Focus Focus還可以用于如CheckBox、Button、ListBox、ComboBox等控件。 例2.6 對輸入的數(shù)據(jù)進行合法性檢驗,過濾不合法的數(shù)據(jù)。,本章目錄,52,2.3.5 命令按鈕,用于程序運行時執(zhí)行相應(yīng)的事件 1. 屬性 (1) Text
26、 命令按鈕上顯示的文字 (2) FlatStyle 按鈕的外觀 該屬性有4個枚舉值: Flat 以平面顯示按鈕 Popup 鼠標(biāo)在按鈕上以Flat形式顯示,否則以Standand顯示 Standand 以三維效果顯示(默認) System 由操作系統(tǒng)決定外觀形式,本章目錄,53,命令按鈕,(3) Image、BackGroundImage 當(dāng)FlatStyle屬性值設(shè)置為非System的值時,則可以使用Image、BackGroundImage屬性為按鈕設(shè)置圖形或背景圖,顯示不同的圖形文件(.bmp和.ico)。通常情況使用Image屬性。 (4) TextAlign、ImageAlign 設(shè)
27、置文本、圖形在按鈕上的對齊方式 2. 事件 命令按鈕一般接收Click事件,本章目錄,54,2.4 綜合應(yīng)用,例2.7建立一個類似記事本的應(yīng)用程序,提供: (1) 剪切、復(fù)制和粘貼的編輯操作 (2) 字體大小的格式設(shè)置 分析: (1) 建立一個文本框輸入文本,文本框應(yīng)該有滾動條,為了便于調(diào)試,程序運行時文本框有初始值。 (2) 利用文本框的SelectedText屬性實現(xiàn)“剪切、復(fù)制和粘貼”的編輯操作; (3) “格式”設(shè)置利用Font對象實現(xiàn)。,代碼說明,本章目錄,55,本章小節(jié),類是同種對象的集合與抽象,包含所創(chuàng)建對象的屬性描述和行為特征的定義,是創(chuàng)建對象實例的模板。 對象三要素:屬性、事
28、件、方法 屬性的類型:基本數(shù)據(jù)類型、枚舉類型、結(jié)構(gòu)類型 窗體 是所有控件的容器 基本控件 標(biāo)簽、文本框、命令按鈕,本章目錄,56,思考題,1. 什么是類?什么是對象?什么是事件過程? 2. 屬性和方法的區(qū)別是什么? 3. 如何建立一個完整的應(yīng)用程序? 4. 如何在文本框內(nèi)顯示多行文本? 5. 如何使對象獲得焦點? 6.如何在命令按鈕上設(shè)置圖形?,本章目錄,57,第三章 VB.NET語言基礎(chǔ),3.1 變量、常量與數(shù)據(jù)類型 3.2 運算符和表達式 3.3 常用函數(shù) 3.4 程序結(jié)構(gòu)和編碼規(guī)則 3.5 綜合應(yīng)用,本章目錄,58,3.1 變量、常量和數(shù)據(jù)類型,3.1.1變量概述 變量 在程序運行中其存
29、儲的值可以改變 命名規(guī)則: 必須以字母或漢字開頭,由字母、漢字、數(shù)字或下劃線組成,長度小于等于255個字符 不能使用VB.NET中的關(guān)鍵字 VB.NET不區(qū)分變量名的大小寫,一般變量名首字母用大寫,其余用小寫字母表示;常量全部用大寫字母表示,本章目錄,59,3.1.1變量概述,值類型和引用類型的變量 值類型變量 直接存放數(shù)據(jù)。每個值類型變量有它自己的數(shù)據(jù)拷貝,因此對一個值類型變量的操作不能影響其他的變量。 引用類型變量 并不真的包含數(shù)據(jù),存放的是指向其他數(shù)據(jù)的內(nèi)存地址的指針,也就是把數(shù)據(jù)值所在的地址作為引用變量的值。該種變量對象的引用簡稱為賦值或存儲。字符串、數(shù)組和類是引用類型的變量。,本章目
30、錄,60,變量概述,x是值類型變量,存放的值為1234; s是引用類型變量,指向VB.NET的一個引用,本章目錄,61,3.1.2 數(shù)據(jù)類型,本章目錄,62,3.1.3變量聲明,1. 用Dim語句顯式聲明變量 Dim 變量名 As 類型=初始值 As部分缺省,創(chuàng)建的變量為Object類型 初始值子句,表示給聲明的變量賦值 一條Dim語句可同時定義多個變量。多個相同類型變量,可用一個As來指定(前面幾個由逗號分隔),這時不能給變量賦初值。 例如:Dim m,n,j As Integer,x,y As Single,k k為Object類型,本章目錄,63,變量聲明,2. 隱式聲明 默認狀態(tài)下,系
31、統(tǒng)要求對使用的變量都顯式聲明,當(dāng)使用沒有聲明的變量時,該變量名下有綠色曲線(表示語法錯)。若對變量不聲明而直接使用,稱為隱式聲明。則需要在模塊中所有程序代碼的最前面加語句: Option Explicit Off,本章目錄,64,3.1.4 常量,常量是在程序運行中不變的量,VB.NET中有三種常量: 直接常量 其常數(shù)值直接反映了其類型 符號常量 用戶聲明,便于程序閱讀或修改 Const 符號常量名 As 類型 = 表達式 系統(tǒng)常量 系統(tǒng)提供許多內(nèi)部常量和枚舉 例如:vbCrLf 回車/換行組合符 枚舉 如控件的顏色、邊框線型等,本章目錄,65,3.2 運算符和表達式,和其他語言一樣,VB.N
32、ET中也具有豐富的運算符,通過運算符和操作數(shù)組合成表達式,實現(xiàn)程序編制中所需的大量操作。 運算符是表示實現(xiàn)某種運算的符號。VB.NET中的運算符可分算術(shù)運算符、字符串運算符、關(guān)系運算符和邏輯運算符四類。,本章目錄,66,3.2.1 算術(shù)運算符,例:5+10 mod 10 9 / 3+2 2 結(jié)果:10,注意:對算術(shù)運算符兩邊的操作數(shù)應(yīng)是數(shù)值型,若是數(shù)字字符或邏輯型,則自動轉(zhuǎn)換成數(shù)值類型后再運算。 例如: 30-True 結(jié)果是31,邏輯量True轉(zhuǎn)為數(shù)值-1,F(xiàn)alse轉(zhuǎn)為數(shù)值0 False + 10 + 4 結(jié)果是14,本章目錄,67,字符串運算符, Interval0 例7.8設(shè)計一個倒計
33、時應(yīng)用程序,代碼說明,本章目錄,216,7.2 通用對話框,.NET提供了一組基于Windows的標(biāo)準(zhǔn)對話框界面。利用通用對話框控件可在窗體上創(chuàng)建打開文件、保存文件、顏色、字體、打印、打印預(yù)覽等對話框。,通用對話框僅用于應(yīng)用程序與用戶之間進行信息交互,是輸入輸出的界面,不能真正實現(xiàn)文件打開、文件存儲、設(shè)置顏色、字體設(shè)置、打印等操作,如果想要實現(xiàn)這些功能則需要編程實現(xiàn)。,本章目錄,217,7.2.1打開文件對話框,由 OpenFileDialog 控件來實現(xiàn) 重要屬性 : (1) FileName 文件名稱,包含路徑 (2) Filter 確定所顯示文件的類型 例如:Text Files|*.t
34、xt|所有文件|*.*顯示文本文件和所有文件 (3) FilterIndex 決定文件列表框中顯示第幾組類型的文件 (4) InitialDirectory 初始化路徑,本章目錄,218,打開文件對話框,本章目錄,219,打開文件對話框,例7.11編寫一個應(yīng)用程序,彈出打開文件對話框,從中選擇一個BMP位圖文件,能在圖形框中顯示該圖片。 例7.12編寫一個簡單的文本文件編輯程序,代碼說明,代碼說明,本章目錄,220,7.2.2 保存文件對話框,由 SaveFileDialog 控件來實現(xiàn) SaveFileDialog控件的屬性與OpenFileDialog控件基本相同,特有的屬性是Defaul
35、tExt屬性,用于設(shè)置缺省的擴展名 。 例7.13 為例7.12中的另存為命令按鈕編寫事件過程,把文本框內(nèi)的信息存盤。,本章目錄,221,7.2.3 顏色對話框,由 ColorDialog 控件來實現(xiàn) 重要屬性Color,它返回或設(shè)置選定的顏色,屬于Color結(jié)構(gòu)類型。 例7.14 為例7.12中的顏色命令按鈕編寫事件過程,設(shè)置文本框的前景色。 Sub Button3_Click( ) Handles Button3.Click ColorDialog1.ShowDialog() 打開顏色對話框 TextBox1.ForeColor = ColorDialog1.Color End Sub,設(shè)
36、置文件框前景顏色,本章目錄,222,7.2.4 字體對話框,通過FontDialog控件來實現(xiàn),例7.14 編寫設(shè)置文本框字體的事件過程。 Sub Button4_Click( ) Handles Button4.Click FontDialog1.ShowDialog() 打開字體對話框 TextBox1.Font = FontDialog1.Font 設(shè)置字體 End Sub,Font獲取選擇的字體 Color 選定的顏色,ShowColor控制是否有“顏色”選項,本章目錄,223,7.3 菜單設(shè)計,7.3.1 菜單設(shè)計概述 菜單有下拉式菜單和彈出菜單(上下文菜單)。下拉式菜單的組成結(jié)構(gòu):
37、,本章目錄,224,7.3.1 菜單設(shè)計概述,.NET提供了MenuStrip和ContextMextStrip兩個控件,分別用來設(shè)計下拉式菜單和彈出式菜單。,從這里開始設(shè)計下拉式菜單,從這里開始設(shè)計彈出菜單,本章目錄,225,菜單設(shè)計概述,菜單項除了Name、Visible、Enabled等屬性之外,還具有下列重要屬性: (1) Text 菜單項上顯示的標(biāo)題文本 在字符前加一個 Data Source = Student.mdb Provide,指定連接提供程序的名稱; Data Source,用于指定要連接的數(shù)據(jù)源文件。,357,預(yù)覽數(shù)據(jù)集,右擊xsd視圖下相應(yīng)表,選擇預(yù)覽數(shù)據(jù),358,B
38、indingSource 組件,BindingSource 組件是將ListBox、DataGridView等數(shù)據(jù)顯示控件綁定到數(shù)據(jù)集的中間層,BindingSource 組件首先綁定到數(shù)據(jù)集,然后將ListBox、DataGridView等數(shù)據(jù)顯示控件綁定到BindingSource組件。 通常,設(shè)計時會自動生成相應(yīng)的BindingSource,359,11.2.3 數(shù)據(jù)綁定,什么是數(shù)據(jù)綁定? 數(shù)據(jù)綁定是一個過程,即在運行時自動為與數(shù)據(jù)集中的元素關(guān)聯(lián)的控件設(shè)置屬性。以便通過控件顯示數(shù)據(jù)集中的數(shù)據(jù)。,BindingSource,Adapter,360,數(shù)據(jù)綁定,Windows 窗體有簡單數(shù)據(jù)綁
39、定和復(fù)雜數(shù)據(jù)綁定 簡單數(shù)據(jù)綁定 簡單數(shù)據(jù)綁定就是將控件綁定到單個數(shù)據(jù)字段。每個控件僅顯示數(shù)據(jù)集中的一個字段值。最常用的簡單數(shù)據(jù)綁定是將數(shù)據(jù)綁定到文本框和標(biāo)簽。要建立數(shù)據(jù)綁定,需要在設(shè)計或運行時對控件的DataBinding屬性進行設(shè)置。,361,簡單數(shù)據(jù)綁定,例11.2 數(shù)據(jù)綁定的操作過程 界面設(shè)計,可以直接從數(shù)據(jù)源拖出,設(shè)置綁定屬性,程序代碼,從數(shù)據(jù)源拖曳到窗體上,362,自定義記錄移動,使用BindingSource對象瀏覽數(shù)據(jù)記錄 Position 屬性 數(shù)據(jù)當(dāng)前記錄的位置序號 Count 屬性 數(shù)據(jù)中的記錄條數(shù) 轉(zhuǎn)跳到第一條記錄 Me.基本情況BindingSource.MoveFir
40、st() 轉(zhuǎn)跳到上一條記錄 Me.基本情況BindingSource.MovePrevious() 轉(zhuǎn)跳到下一條記錄 Me.基本情況BindingSource.MoveNext() 最后一條記錄 Me.基本情況BindingSource.MoveLast(),363,復(fù)雜數(shù)據(jù)綁定,復(fù)雜數(shù)據(jù)綁定允許將多個數(shù)據(jù)元素綁定到一個控件,同時顯示記錄源中的多行或多列。支持復(fù)雜數(shù)據(jù)綁定的控件:數(shù)據(jù)網(wǎng)格DataGridView、組合框ComboBox和列表框ListBox等,364,復(fù)雜數(shù)據(jù)綁定,復(fù)雜數(shù)據(jù)綁定屬 性設(shè)置,365,復(fù)雜數(shù)據(jù)綁定,例11.3復(fù)雜數(shù)據(jù)綁定的操作過程,選擇數(shù)據(jù)源,數(shù)據(jù)綁定,366,11
41、.2.3 使用代碼訪問數(shù)據(jù)庫,創(chuàng)建數(shù)據(jù)對象的代碼: Dim 數(shù)據(jù)對象 As New 對象類(參數(shù)) 例11.4 用代碼實現(xiàn)例11.2的功能 界面設(shè)計,導(dǎo)入ADO.NET名稱空間 ImportsSystem.Data ImportsSystem.Data.OleDb,367,創(chuàng)建對象,創(chuàng)建OleDbConnection連接對象 創(chuàng)建連接Student.mdb的對象objConn,代碼: Dim strConn As String = Provider = Microsoft. Jet.OLEDB.4.0; Data Source = Student.mdb Dim objConn As New
42、OleDbConnection(strConn) objConn.Open() 創(chuàng)建創(chuàng)建OleDbDataAdapter對象 Dim strSql = Select * From 基本情況 Dim objAdap As New OleDbDataAdapter(strSql, objConn),368,創(chuàng)建對象,創(chuàng)建數(shù)據(jù)集對象 Dim objDSet As New DataSet 用數(shù)據(jù)集的“基本情況”表填充objDSet對象 objAdap.Fill(objDSet, 基本情況),369,使用代碼綁定數(shù)據(jù),實現(xiàn)數(shù)據(jù)綁定 使用控件的DataBindings屬性的Add方法建立綁定: 控件對象.
43、DataBindings.Add(New Binding(控件屬性, 數(shù)據(jù)集, 字段名) 例 將字段姓名綁定到控件TextBox1的Text 屬性: TextBox1.DataBindings.Add(New Binding(Text, objDSet, 基本情況.姓名),370,11.3 數(shù)據(jù)庫操作,11.3.1 數(shù)據(jù)庫編輯操作 常見的編輯操作就是對數(shù)據(jù)的增、刪、改。使用命令對象直接對數(shù)據(jù)源進行操作,方法如下: CommandText屬性 設(shè)置SQL語句 調(diào)用Execute方法 執(zhí)行SQL語句 ExecuteReader 返回DataReader結(jié)果集 ExecuteNonQuery 不返回
44、數(shù)據(jù)的SQL命令(增、刪、改) ExecuteScalar 返回單個數(shù)據(jù)的SQL命令(例對數(shù)據(jù)的統(tǒng)計、求和),371,增加數(shù)據(jù)記錄,使用Insert語句插入一條記錄到數(shù)據(jù)源。例如: Insert into 基本情況(姓名, 學(xué)號) Values (李力, 50101) 實際參數(shù)可通過文本框輸入,可在Values短語中使用標(biāo)記傳遞實參值: Insert into 基本情況(姓名, 學(xué)號) Values (name, num) 而參數(shù)定義的語法為: Dim 參數(shù)名 As new OleDBparameter(sql查詢或更新字符串中的映射名,數(shù)據(jù)類型,長度),372,增加數(shù)據(jù)記錄例,例11.5 在
45、例11.4的基礎(chǔ)上添加增加記錄、刪除記錄、修改記錄按鈕,當(dāng)單擊“增加”按鈕時,先清空文本框,并將按鈕提示改變成“確認”;當(dāng)在文本框輸入數(shù)據(jù)后,再單擊“確認”,將文本框內(nèi)輸入的數(shù)據(jù)構(gòu)成一條記錄插入到數(shù)據(jù)源、重新填充數(shù)據(jù)集并恢復(fù)按鈕提示。,代碼說明,373,刪除數(shù)據(jù)源內(nèi)的記錄,刪除數(shù)據(jù)源內(nèi)的記錄使用Delect語句 Delect 基本情況 Where 學(xué)號 = 50102 實參50102通過文本框輸入。要用輸入值構(gòu)成刪除條件,除了采用參數(shù)傳遞方法外,也可用字符連接運算符拼接變量形成條件,例如: Delect 基本情況 Where 學(xué)號 = & TextBox2.Text 注意:如果字段的類型為字符型,則輸入值的兩側(cè)加上單引號: Delect 基本情況 Where 學(xué)號 = & TextBox2.Text & 字段的類型為日期型,將單引號改為#,374,刪除數(shù)據(jù)記錄,刪除數(shù)據(jù)集內(nèi)的行使用Rows對象的Delete方法。 例如,刪除
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 建房合同樣本格式范本
- 專利許可合同范本
- 三方供貨合同
- 2025版酒店停車場管理與收費服務(wù)合同范本2篇
- 專利獨占許可合同范本
- 2025版子女撫養(yǎng)與成長環(huán)境改善協(xié)議書模板3篇
- 北京體育職業(yè)學(xué)院《研究型建筑設(shè)計》2023-2024學(xué)年第一學(xué)期期末試卷
- 2025版葵花籽品牌授權(quán)與營銷推廣合同3篇
- 膩子銷售合同
- 2025版數(shù)據(jù)中心機房消防設(shè)備隔音降噪施工合同
- DB44-T 2480-2024 鋁及鋁合金深井鑄造安全技術(shù)規(guī)范
- 中醫(yī)適宜技術(shù)發(fā)展現(xiàn)狀
- 部編人教版四年級數(shù)學(xué)上冊期末考試卷(可打印)
- 一例阿爾茨海默病患者的護理查房
- 農(nóng)貿(mào)市場安全生產(chǎn)工作方案
- 咸陽租房合同
- 《鋼筋保護層檢測》課件
- YJ-T 27-2024 應(yīng)急指揮通信保障能力建設(shè)規(guī)范
- 合伙人協(xié)議書決策機制
- 西藏畜牧獸醫(yī)知識培訓(xùn)課件
- 護理專業(yè)人才培養(yǎng)方案論證報告
評論
0/150
提交評論