第1章-入門基礎(chǔ)_第1頁
第1章-入門基礎(chǔ)_第2頁
第1章-入門基礎(chǔ)_第3頁
第1章-入門基礎(chǔ)_第4頁
第1章-入門基礎(chǔ)_第5頁
已閱讀5頁,還剩124頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

VB.NET語言與程序設(shè)計方法

課程號:13031170

(共1032頁)交通運輸管理學(xué)院管理科學(xué)與工程系

薛大伸教授2/2/20230目錄第2章面向?qū)ο蟮目梢暬幊袒A(chǔ)第3章VB.NET程序設(shè)計基礎(chǔ)第4章基本控制結(jié)構(gòu)第5章數(shù)組第6章過程第7章用戶界面設(shè)計第1章VB.NET入門基礎(chǔ)2/2/20231第8章數(shù)據(jù)文件第9章數(shù)據(jù)庫應(yīng)用技術(shù)第11章圖形應(yīng)用程序第10章面向?qū)ο蟪绦蛟O(shè)計基礎(chǔ)2/2/20232教學(xué)過程的管理總學(xué)時:72學(xué)時課堂授課:5—19周。46學(xué)時實驗課:6—18周。

26學(xué)時

1—2班:第6—18周:周三5—6節(jié);120室

3班:第6—18周:周三5—6節(jié);124室

實驗室所在樓宇:交管學(xué)院樓(文科樓南西門或北門進(jìn)入)聯(lián)系教師:交管學(xué)院樓116室,電話:84725256授課進(jìn)度:每次上課(2學(xué)時)平均講授15頁(教材)考試:19周周四考試、閉卷筆試,筆試80分;實驗課考核20分雙周停周五的課單周停周四的課2/2/202331課堂教學(xué)要求(1)課堂講授的內(nèi)容比教材有所增加,需要記筆記。(2)課后作業(yè)必須完成,所留作業(yè)也是期末考試的重點內(nèi)容。2實驗教學(xué)的要求(1)教材中的例題、思考題、試驗篇的內(nèi)容必須上機調(diào)試。主動培養(yǎng)算法分析和程序設(shè)計的能力。(2)認(rèn)真完成實驗報告。2/2/202343實驗報告的格式(1)題目(2)程序清單(不需要畫窗體界面)(3)運行結(jié)果(程序執(zhí)行后屏幕上顯示的內(nèi)容)(4)結(jié)果分析和經(jīng)驗(分析結(jié)果和獲得的經(jīng)驗)需要購買“大連海事大學(xué)實驗報告”紙2/2/20235關(guān)于VS.NET2005系統(tǒng)軟件的安裝和配置:1、將光盤中的文件夾NET2005復(fù)制到硬盤2、雙擊SETUP.EXE文件進(jìn)行安裝,選擇“全部安裝”3、第一次啟動VS.NET時需要進(jìn)行配置:雙擊“VisualStudio2005”,在“選擇默認(rèn)環(huán)境配置”窗口上選擇“VisualBasic開發(fā)設(shè)置”單擊“啟動VisualStudio(s)”4、安裝幫助系統(tǒng),雙擊MSDN文件夾下的SETUP.EXE文件(幫助系統(tǒng)提供了搜索命令、函數(shù)等語法的功能)5、因需要使用access數(shù)據(jù)庫系統(tǒng),所以office選擇全部安裝6、建議購置的機器:內(nèi)存4G以上,外存250G以上,主頻3.0MHz以上。2/2/20236關(guān)于課件net的復(fù)制:此課件使用了PowerPoint和VB.NET的超鏈接技術(shù),所以必須將光盤上文件夾net復(fù)制到D盤根目錄下。對課件的說明:(2)D:\net\課堂教學(xué)課件:包含1—11章的PPT課件(3)D:\net\例子:包含1—11章的例題(4)D:\net\圖片:包含常用的圖片文件2/2/20237關(guān)于圖片種類的解釋:(1).BMP:BMP文件,位圖文件,是Windows環(huán)境中交換與圖有關(guān)的數(shù)據(jù)的一種標(biāo)準(zhǔn),在Windows環(huán)境中運行的圖形圖像軟件都支持BMP圖像格式。(2).ICO:ICO文件,圖標(biāo)文件。(3).JPG:JPG(或JPEG)文件,寫實攝影作品文件。(4).GIF:GIF文件,單調(diào)顏色圖像文件。是用于具有單調(diào)顏色圖像的標(biāo)準(zhǔn)格式。普遍適用于只需少量顏色的圖像(如:黑白相片)。2/2/20238第1章VB.NET入門基礎(chǔ)

1.4VB.NET集成開發(fā)環(huán)境

1.3面向?qū)ο蠡靖拍?/p>

1.1引言

1.5簡單應(yīng)用程序建立

1.6自主學(xué)習(xí)—VB.NET概述

1.2引例和VB.NET特點2/2/202391.1引言

1.1.1計算機系統(tǒng)

操作系統(tǒng)開發(fā)工具售票系統(tǒng)財務(wù)系統(tǒng)Office軟件運算器輸出設(shè)備:顯示器、打印機等控制器內(nèi)部存儲器輸入設(shè)備:鍵盤、鼠標(biāo)、掃描儀等中央處理器DOS、WIN7、VistaWindowsXPLinux、UnixVB、VB.NETC、VC++、JavaOracle、AccessSQLServer外部存儲器:硬盤、光盤、U盤等硬件系統(tǒng)軟件系統(tǒng)主機外部設(shè)備系統(tǒng)軟件應(yīng)用軟件計算機系統(tǒng)

2/2/2023第10頁2/2/2023101.1.2為什么學(xué)習(xí)VB.NET?簡單、易學(xué)、直觀、易懂代碼短小、精干

結(jié)構(gòu)化程序設(shè)計

可視化的集成開發(fā)環(huán)境高效、快速地開發(fā)應(yīng)用軟件圖形界面豐富2/2/2023111.1.3如何學(xué)習(xí)VB.NET?

看得懂的書,請仔細(xì)看;看不懂的書,請硬著頭皮看;對于網(wǎng)絡(luò),還是希望大家能多利用一下,很多問題你要學(xué)會自己找答案,比如google、百度都是很好的搜索引擎,你只要輸入關(guān)鍵字就能找到很多相關(guān)資料,別老是等待別人給你希望。別指望看第一遍書就能記住和掌握什么——請看第二遍、第三遍。長期堅持實踐和不遺余力的博覽群書。2/2/2023121.1.4VB.NET能作什么?

一般應(yīng)用(常見的程序設(shè)計)數(shù)據(jù)庫應(yīng)用(快速高效處理數(shù)據(jù)庫的數(shù)據(jù))多媒體應(yīng)用(使用資源太多,通常使用VC++)結(jié)構(gòu)化程序設(shè)計網(wǎng)絡(luò)和Internet應(yīng)用2/2/2023131.1.5如何用VB.NET?

建立工程編輯窗體放置控件編寫代碼運行程序程序編輯程序執(zhí)行請把書上的例子或習(xí)題親手到電腦上實踐,即使課件或配套光盤中有源程序文件。

從明天起,做一個不浮躁的程序員。

2/2/202314計算機只能處理二進(jìn)制信息,存儲二進(jìn)制信息的基本單位是位(b,bit)。把8個二進(jìn)制位組成的通用基本單元叫做字節(jié)(B,Byte)。以字節(jié)為單位表示存儲容量。1B(字節(jié))=8bits(位)1KB(千字節(jié))=1024B(字節(jié))1MB(兆字節(jié))=1024KB(千字節(jié))1GB(吉字節(jié))=1024MB(兆字節(jié))1TB(太字節(jié))=1024GB(吉字節(jié))1.1.6計算機存儲器容量的計量單位2/2/202315計算機的運算速度的常用計算方法:指令平均運算速度,以MIPS為單位(百萬條指令/每秒)CPU主頻和指令執(zhí)行所需的時鐘周期,以MHz為單位(兆赫)浮點數(shù)加法計算速度(次/每秒)1.1.7計算機的計算速度2/2/202316機器數(shù),在計算機中,存儲有符號數(shù)值時,數(shù)值和數(shù)的符號都只能用0、1來表示,數(shù)的最高位0表示正數(shù),數(shù)的最高位1表示負(fù)數(shù),數(shù)值絕對值的二進(jìn)制表示稱為原碼,負(fù)數(shù)的原碼按位取反稱為反碼,負(fù)數(shù)的反碼加1稱為負(fù)數(shù)的補碼。補碼稱為機器數(shù)。在計算機中數(shù)以補碼方式存儲的(規(guī)定正數(shù)的反碼、補碼都是其原碼)。使用2個字節(jié)存儲數(shù)值。例:1.1.8計算機的機器數(shù)01500000000000000011111111111111111150-112/2/202317目前計算機中用得最廣泛的字符集及其編碼是ASCII碼和Unicode(唯一碼),ASCII碼是由美國國家標(biāo)準(zhǔn)局(ANSI)制定,ASCII全稱是:AmericanStandardCodeforInformationInterchange,翻譯為“美國信息交換標(biāo)準(zhǔn)碼”。在計算機中非數(shù)值的西文或中文等數(shù)據(jù)是以ASCII碼方式或Unicode來存儲的。常用的ASCII碼表如下:1.1.9ASCII碼2/2/202318ASCII碼縮寫/字符解釋0NUL(null)空字符1SOH(startofhandling)標(biāo)題開始2STX(startoftext)正文開始3ETX(endoftext)正文結(jié)束4EOT(endoftransmission)傳輸結(jié)束5ENQ(enquiry)請求6ACK(acknowledge)收到通知7BEL(bell)響鈴8BS(backspace)退格9HT(horizontaltab)水平制表符10LF(NLlinefeed,newline)換行符2/2/20231911VT(verticaltab)垂直制表符12FF(NPformfeed,newpage)換頁鍵13CR(carriagereturn)回車<Enter>,輸入結(jié)束14SO(shiftout)不用切換15SI(shiftin)啟用切換16DLE(datalinkescape)數(shù)據(jù)鏈路轉(zhuǎn)義17DC1(devicecontrol1)設(shè)備控制118DC2(devicecontrol2)設(shè)備控制219DC3(devicecontrol3)設(shè)備控制320DC4(devicecontrol4)設(shè)備控制421NAK(negativeacknowledge)拒絕接收兩程序員聊天,程序員甲抱怨:“做程序員太辛苦了,我想換行……我該怎么辦?”程序員乙:“敲一下回車?!?/2/20232022SYN(synchronousidle)同步空閑23ETB(endoftrans.block)傳輸塊結(jié)束24CAN(cancel)取消25EM(endofmedium)介質(zhì)中斷26SUB(substitute)替補27ESC(escape)溢出28FS(fileseparator)文件分割符29GS(groupseparator)分組符30RS(recordseparator)記錄分離符31US(unitseparator)單元分隔符32

空格(鍵)2/2/20232133!34"35#36$37%38&39'40(41)42*43+44,45-46.47/48049150251352453554655756857958:59;60<

61=62>

63?64@65A66B67C68D69E70F71G72H73I74J75K76L77M78N79O80P81Q82R83S84T85U86V87W88X89Y90Z91[92\2/2/20232293]94^95_96`97a98b99c100d101e102f103g104h105i106j107k108l109m110n111o112p113q114r115s116t117u

118v

119w

120x

121y

122z

123{

124|

125}

126~

127DEL(delete)刪除2/2/2023231.1.10什么是計算機語言計算機語言:人和計算機交流信息的、計算機和人都能識別的語言。計算機語言發(fā)展階段:

機器語言(由0和1組成的指令)命令10010000,表示A=A-B。(可讀性差)匯編語言(用英文字母和數(shù)字表示指令)命令SUBAB;表示A=A-B。(可讀性差)

高級語言(接近于人的自然語言和數(shù)學(xué)語言)面向過程的語言(C、FORTRAN等)面向?qū)ο蟮恼Z言(JAVA、VB.NET等)低級語言2/2/2023241.1.11什么是計算機程序程序:一組計算機能識別和執(zhí)行的指令只要讓計算機執(zhí)行這個程序,計算機就會自動地、有條不紊地進(jìn)行工作。計算機的一切操作都是由程序(代碼、指令集、命令集)控制的,離開程序,計算機將一事無成。2/2/2023251.1.12概念解釋標(biāo)識符:只能由字母、數(shù)字、漢字和下劃線組成的一串字符,而且必須以字母或漢字開頭,不能多于255個字符。用來標(biāo)識變量、數(shù)組、函數(shù)等名稱。為了簡化程序,通常不使用漢字。半角字符:在英文狀態(tài)下輸入的字符。在內(nèi)存中占有1個字節(jié)。程序中使用的標(biāo)點符號都是半角字符。全角字符:在中文狀態(tài)下輸入的字符。在內(nèi)存中占有2個字節(jié)。只能在字符串常量和注釋語句中使用全角字符。注釋語句:不影響程序的執(zhí)行,只用于提供說明性的材料。關(guān)鍵字:VB.NET等高級程序設(shè)計語言所使用的特殊標(biāo)識符,第一個字母自動轉(zhuǎn)換為大寫。以區(qū)分其他標(biāo)識符。例如:Abs(-80),求絕對值數(shù)學(xué)函數(shù),Abs是關(guān)鍵字。2/2/202326

本教材符號說明:例如:DimaAsInteger,bAsInteger關(guān)鍵字不可以用作變量名、函數(shù)名、過程名。關(guān)鍵字第一個字母大寫,變量名、函數(shù)名、過程名使用小寫字母。VB程序通常不寫行號。

1.1.13本教材語句的形式(語法)符號說明例如:DimaAsInteger,bAsInteger關(guān)鍵字不可以用作變量名、函數(shù)名、過程名。關(guān)鍵字第一個字母自動大寫,變量名、函數(shù)名、過程名使用小寫字母。VB.NET程序通常不寫行號。10Public|Private|Dim└┘a└┘[As└┘Integer],…“|”表示“多項選一”“└┘”表示“空格字符”“[]”表示“可選”,“可省略的內(nèi)容”“…”表示“可重復(fù)前面的項”命令的語法(或稱規(guī)則)“10”表示“行號”2/2/202327

1.1.14本教材及相關(guān)教材英文縮寫語翻譯OOP面向?qū)ο蟮某绦蛟O(shè)計方法IDE集成開發(fā)環(huán)境ODBC開放式數(shù)據(jù)庫連接DLL動態(tài)鏈接庫(用于調(diào)用函數(shù))APIWindows應(yīng)用程序接口函數(shù)DDEDLL動態(tài)數(shù)據(jù)交換OLE對象鏈接與嵌入RAD快速應(yīng)用程序開發(fā)ActiveX以控件方式調(diào)用函數(shù)2/2/202328ASP活動服務(wù)頁SOAP簡單對象訪問協(xié)議CLR公共語言運行環(huán)境IDL接口定義語言JIT及時編譯器ADO活動數(shù)據(jù)對象GDI圖形設(shè)備接口DOS磁盤操作系統(tǒng)MSIL中間語言2/2/202329BCL基礎(chǔ)類庫MSDN幫助文檔SQL結(jié)構(gòu)查詢語言DBMS數(shù)據(jù)庫管理系統(tǒng)VBSVisualBasic腳本語言XML可擴展標(biāo)記語言(ExtensibleMarkupLanguage)

Web數(shù)據(jù)訪問頁,實現(xiàn)Internet與數(shù)據(jù)庫的訪問MVS2005MicrosoftVisualStudio2005(微軟可視化工作室2005年版)2/2/202330PGMBug程序缺陷Ctrl

控制鍵Alt

備用鍵Delete

刪除鍵前端工程師說,我去交友網(wǎng)站找女朋友去了。朋友問,找到了嗎?工程師說,找到了她頁面的一個bug。程序猿生了3個小猿,分別取名叫Ctrl、Alt和Delete,如果他們不聽話,程序猿就只要同時敲他們一下就會好的。2/2/2023311.1.15設(shè)計一個簡單的VB.NET應(yīng)用程序例設(shè)計一個程序,在窗體上顯示“你好!”以及今日的日期和時間。本程序涉及到的控件(在窗體上的控件也叫對象)及其屬性名稱、屬性值如下:控件名稱控件名中文解釋屬性名稱屬性值Form1窗體1Text一個簡單的設(shè)計Label1標(biāo)簽1Text你好!Button1按鈕1Text確定Button2按鈕2Text退出add12/2/202332步驟1:啟動MicrosoftVisualStudio2005,點擊“項目”2/2/202333步驟2:點擊“確定”2/2/202334步驟3:鼠標(biāo)移動到“工具箱”2/2/202335顯示如下:控件名,也是類名類名+序號作為對象名2/2/202336步驟4:拖放標(biāo)簽和按鈕控件對象名作為對象默認(rèn)的文本屬性值2/2/202337步驟5:字體偏小,放大字體。使用鼠標(biāo)左鍵全選標(biāo)簽和按鈕(出現(xiàn)控件句柄),在屬性窗口上點擊Font屬性的屬性值一欄。點擊省略號按鈕。2/2/202338步驟6:選擇字體,字形,字號大?。稽c擊“確定”2/2/202339步驟7:點擊窗體空白處。設(shè)置窗體的Text屬性值為“一個簡單的設(shè)計”;點擊標(biāo)簽,設(shè)置標(biāo)簽的Text屬性為“你好!”;點擊按鈕1,設(shè)置按鈕1的Text屬性為“確定”;點擊按鈕2,設(shè)置按鈕2的Text屬性為“退出”;(以上操作在屬性窗口中進(jìn)行)2/2/202340步驟8:在“解決方案資源管理器”窗口,點擊“查看代碼”選項(第四個按鈕),進(jìn)入程序設(shè)計階段。一定要自己親自寫一遍代碼,不要想當(dāng)然地以為閱讀和理解代碼就夠了。

2/2/202341步驟9:點擊對象列表框,選擇對象;點擊過程聲明列表框,選擇過程。2/2/202342對象分別是Button1和Button2,過程是Click。進(jìn)入自行設(shè)計的代碼編輯。2/2/202343步驟10:輸入代碼2/2/202344步驟11:運行窗體:鼠標(biāo)單擊“確定按鈕”。單擊“退出”按鈕2/2/202345步驟12:保存項目。將設(shè)計的應(yīng)用程序保存在外存介質(zhì)上。

課堂教學(xué)使用的VS.NET2005軟件的版本與實驗室安裝的VS.NET2005軟件的版本不同,保存項目的操作過程不同。保存項目的操作步驟將在以后介紹。程序運行時,首先系統(tǒng)自動的將源程序翻譯成可執(zhí)行的代碼,生成可執(zhí)行的代碼文件,文件名是:項目名稱.exe,存放的路徑是:項目名\bin\debug,在操作系統(tǒng)環(huán)境下,雙擊此文件名,也可以執(zhí)行此程序。如雙擊:D:\net\例子\1\add1\bin\debug\add12/2/2023461.2引例和VB.NET特點

1.2.1引例

例1.1VB.NET實現(xiàn)字幕動畫。要求:以西湖風(fēng)景照片作為窗體的背景背景圖案上有“歡迎學(xué)習(xí)VB.NET”文字文字自上而下“自動”或“手動”移動文字超出窗體范圍時,從頂部再開始。例1.12/2/202347相關(guān)對象相關(guān)屬性的設(shè)置控件名屬性名設(shè)置值(屬性值)Form1(窗體)BackgroundImage(背景圖案)導(dǎo)入背景圖片“西湖風(fēng)光.JPG”文件,(路徑:D:\net\圖片)Text(文本或稱標(biāo)題)字幕動畫Button1(按鈕)Image(圖片)導(dǎo)入“KEY04.ICO”文件(手)(路徑:D:\net\圖片)Text(文本)2/2/202348控件名屬性名設(shè)置值(屬性值)Button2(按鈕)Image(圖片)導(dǎo)入“CLOCK06.ICO”文件(鐘表)(路徑:D:\net\圖片)Text(文本)Label1(標(biāo)簽)BackColor(背景顏色)Web下的Transparent(背景顏色與窗體背景顏色相同,透明)Text(文本)“歡迎學(xué)習(xí)VB.NET”Font(字體)宋體、粗體、二號2/2/202349控件名屬性名設(shè)置值(屬性值)Timer1(定時器)Interval(時間間隔)200(200/1000=0.2),(每0.2秒觸發(fā)一次Tick事件)Enabled(可用或稱有效)False(無效)2/2/2023502/2/202351窗體是一個對象。窗體上放置的控件就是對象。對象的特征名稱稱為屬性名,對象特征的值稱為屬性值。它們統(tǒng)稱為屬性。訪問對象屬性的語法是:對象名.屬性名。

如:張三.身高=175,張三.性別=“男”在程序設(shè)計過程中,可以省略對象名.或用關(guān)鍵字Me.替代。如以下用法等價:Text=“這是一個例題”Me.Text=“這是一個例題”不可以寫成:Form1.Text=“這是一個例題”2/2/202352屏幕坐標(biāo)系和窗體的位置:窗體位于屏幕坐標(biāo)系內(nèi)。窗體是一個矩形,被放于屏幕中,屏幕左上角為坐標(biāo)原點(0,0),X軸坐標(biāo)向右增大,Y軸坐標(biāo)向下增大。窗體上任何一點的坐標(biāo)位置就相對屏幕的左上角來確定。窗體的Left屬性:是窗體的左邊線與屏幕左邊的距離。窗體的Top屬性:是窗體的上邊線與屏幕上邊的距離。窗體的Height屬性:窗體的高度窗體的Width屬性:窗體的寬度窗體左上角坐標(biāo):(Left,Top)2/2/202353窗體坐標(biāo)系和控件的位置:控件是一個矩形,被放于窗體上,窗體左上角為坐標(biāo)原點(0,0),X軸坐標(biāo)向右增大,Y軸坐標(biāo)向下增大。控件上任何一點的坐標(biāo)位置就相對窗體的左上角來確定。

窗體坐標(biāo)系按鈕的Top屬性按鈕的Left屬性按鈕的Width屬性按鈕的Height屬性按鈕左上角坐標(biāo)是:(Left,Top)窗體標(biāo)題欄yTop(0,0)xLeftWidthHeight2/2/202354當(dāng)一個標(biāo)簽(Label1)放在窗體上時,標(biāo)簽的左上角坐標(biāo)(Left、Top)就被確定了

改變標(biāo)簽坐標(biāo)Left或Top就可移動標(biāo)簽(左右或上下)例如:Label1.Top=Label1.Top+5可使標(biāo)簽Label1向下移動5個像素單位。設(shè)計分析歡迎學(xué)習(xí)VB.NET

TopLeft(0,0)xy2/2/202355什么是像素(見P260)像素是指屏幕上的亮點,是顯示器能分辨的最小單元。每個像素都有一個坐標(biāo)點與之對應(yīng)。用像素表示長度單位時:對象的長度是橫向亮點的個數(shù)(即Width)對象的高度是縱向亮點的個數(shù)(即Height)。顯示器不同,亮點的大小有所不同。2/2/202356鼠標(biāo)右鍵單擊顯示器桌面的空白處,左鍵點擊“屬性”,可以查看你的計算機顯示器分辨率的設(shè)置:(寬×高),如左圖所示。2/2/202357

標(biāo)簽超出窗體的處理移動時要判斷標(biāo)簽是否超出窗體范圍

該點的縱坐標(biāo)為:窗體的高度Height,若:Label1.Top>Me.Height’超出屏幕要使得標(biāo)簽回到窗體頂部,則:Label1.Top=0窗體歡迎學(xué)習(xí)VB.NETHeightWidthTop2/2/202358在此例中,窗體上有4個對象:按鈕控件:Button1(響應(yīng)鼠標(biāo)單擊事件Click)按鈕控件:Button2(響應(yīng)鼠標(biāo)單擊事件Click)標(biāo)簽控件:Label1(用于顯示文本)計時器控件:Timer1,計時器控件不顯示在窗體上,只在窗體的下方空白面板上給出一個提示圖標(biāo)。當(dāng)Timer1.Enabled=True時,每隔Interval/1000秒自動執(zhí)行一次Timer1.Tick事件過程(程序塊)。當(dāng)Timer1.Enabled=False時,Timer1.Tick事件過程不被執(zhí)行。2/2/202359編寫事件過程2/2/202360PublicClassForm1‘定義公共類Form1

PrivateSubButton1_Click(ByValsenderAsObject,_

ByValeAsSystem.EventArgs)_HandlesButton1.Click‘過程參數(shù)、控制柄Timer1.Enabled=FalseCallmymove()

EndSub

….

‘其他過程EndClass‘結(jié)束類Form1一個程序有一個類,每個類有若干個過程,每個過程有若干個語句?!^程體私有子過程、過程名稱Button1_Click、對象名_事件名2/2/202361(1)空格加下劃線:“_”。稱為續(xù)行符。(2)單引號:“’”。是注釋,是增加程序閱讀性的文字說明。

程序員最討厭的四件事:寫注釋、寫文檔、別人不寫注釋、別人不寫文檔……。2/2/202362進(jìn)一步分析:①若要求字幕自左向右移動,如何處理?②如何控制字幕移動的間距?③字幕超出窗體右邊,如何判斷、處理?④如何改變窗體背景使得個性化?左右移動2/2/202363PublicClassForm1

‘定義公共類Form1DimxAsInteger‘定義模塊級變量

PrivateSubButton1_Click(…)HandlesButton1.ClickTimer1.Enabled=True:x=1‘左移動

EndSub

PrivateSubButton2_Click(…)HandlesButton2.ClickTimer1.Enabled=True:x=2‘右移動

EndSub

PrivateSubTimer1_Tick(…)HandlesTimer1.Tick

Callmovepgm()

‘調(diào)用子過程

EndSub2/2/202364Submovepgm()

Ifx=1ThenLabel1.Left=Label1.Left–5‘向左移動IfLabel1.Left<-Label1.WidthThenLabel1.Left=Me.WidthEndIfIfx=2ThenLabel1.Left=Label1.Left+5‘向右移動IfLabel1.Left>Me.WidthThenLabel1.Left=-Label1.WidthEndIf

EndSubEndClass

‘結(jié)束類2/2/202365事件過程首部的形式:

[Private|Public]Sub對象名_事件([參數(shù)])Handles…Private:私有的,本事件過程只能被本窗體的其他過程調(diào)用。Public:共有的,本事件過程可以被本工程的其他窗體的其他過程調(diào)用。省略Private或Public表示共有的。Public是默認(rèn)關(guān)鍵字子過程首部的形式:

[Private|Public]Sub子過程對象名([參數(shù)])Private和Public確定了過程的作用域。過程結(jié)尾的形式:EndSub2/2/202366

提供易學(xué)易用的應(yīng)用程序集成開發(fā)環(huán)境具有面向?qū)ο蟮目梢暬O(shè)計工具事件驅(qū)動的編程機制支持結(jié)構(gòu)化程序設(shè)計,具有面向?qū)ο蟪绦蛟O(shè)計語言的所有特征具有豐富的數(shù)據(jù)類型、類庫強大的數(shù)據(jù)庫、網(wǎng)絡(luò)和圖形功能完備的幫助功能1.2.2.VB.NET主要功能特點設(shè)計、編輯、調(diào)試、運行“手動”、“自動”2/2/2023671.3面向?qū)ο蟾拍?.程序設(shè)計的發(fā)展初期程序設(shè)計(60年代以前)

計算機特點:價格高、內(nèi)存小、速度慢目前

程序追求:指令少、運行快

存在問題:質(zhì)量低、可讀性差、維護(hù)性差、通用性差

2013年6月中國天河二號,3.39億億次/秒浮點運算5000次/秒2/2/202368結(jié)構(gòu)化程序設(shè)計(70年代)

程序組成:順序結(jié)構(gòu)、選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu)

設(shè)計原則:模塊化

存在問題:無數(shù)據(jù)庫處理功能

面向?qū)ο蟪绦蛟O(shè)計(80年代以后)

程序組成:對象作為程序的基本單元

核心:封裝性、繼承性、多態(tài)性2/2/202369初期程序設(shè)計……..……..………….……..………..………………………..類結(jié)構(gòu)化程序設(shè)計面向?qū)ο蟪绦蛟O(shè)計初期的程序設(shè)計拼裝2010年上海世博會遠(yuǎn)大館2000平方米、6層樓的建筑,工人用24小時建成2/2/202370

2.類和對象是同一種對象的集合。對象是類的一個實例。將反映類的屬性、方法、事件封裝在一起,構(gòu)成了面向?qū)ο缶幊痰幕驹亍?1)類人是人類的一個實例屬性:身高、體重等行為:哭、笑事件:下雨、鈴聲屬性方法事件對象的外觀特征數(shù)據(jù)

對象的行為、能力

外界發(fā)生在對象上的事情2/2/202371類的繼承性和派生性:硬件工程師將一臺舊款計算機的部分硬件部件進(jìn)行了更換,以提高機器的性能。計算機繼承了舊款機器的一些功能(計算機的繼承性),同時派生出一臺新的機器(計算機的派生性)。一程序員從醫(yī)院回來一臉沮喪的樣子,問她怎么了?她回答:得了類風(fēng)濕性關(guān)節(jié)炎了,我怕會遺傳給下一代啊。我一臉的問號:誰說類風(fēng)濕性關(guān)節(jié)炎能遺傳的?她一臉詫異:類不是繼承和派生的嗎?2/2/202372(2)對象是類的實例化。例如,張三、李四就是”人類“的實例化,每個人有各自不同的屬性值和方法。

月餅?zāi)P停悾┰嘛灒▽ο螅嵗?/2/202373

總之,類可以看成是對象的類型(張三的類型是“人”),它定義了對象的特征和行為規(guī)則。對象是通過類產(chǎn)生的一個實例,類和對象都由唯一的名字進(jìn)行標(biāo)識,分別是類名和對象名。類是抽象的,而對象是具體的。如機器零件的構(gòu)造圖可以看成一個類,而根據(jù)該構(gòu)造圖創(chuàng)建的一個個機器零件就可以看成是一個個具體的對象。由一個類產(chǎn)生的多個對象基本上都具有同樣的特征和行為。2/2/202374

3.屬性

對象的特征稱為屬性,屬性是類或?qū)ο蟮囊环N成份。如對象的名稱、大小、標(biāo)題等等。類或?qū)ο蟮膶傩允怯深愃频淖兞浚▽傩宰兞浚┙M成的,每個屬性都有自己的名字以及一個相關(guān)的值,對象的屬性名基本上都是系統(tǒng)規(guī)定好的。要注意記住屬性名和理解屬性名的含義。每個對象都有一系列的屬性,可以通過可視化的手段或編程的方法改變屬性的值。2/2/202375

4.方法與事件

方法是對象具有的功能。事件是對象能夠響應(yīng)的外界刺激。張三具備笑的能力。笑:是方法張三聽到有趣的故事,他開心的笑啦。一個張三笑了的事件發(fā)生啦2/2/202376

4.方法與事件

方法就是封裝在類里面特定的過程,供用戶調(diào)用;這些過程的代碼,一般用戶不能看得到,這就是類的“封裝性”。方法由方法名來標(biāo)識,對象的方法名也是系統(tǒng)規(guī)定好了的。一般每個類都具有一系列的標(biāo)準(zhǔn)方法,如Form類具有Show、Hide、Close等方法。2/2/202377

事件可看作是對對象的一種操作。如在程序運行中,對某個對象用鼠標(biāo)單擊一次,就觸發(fā)了該對象的一次“單擊(Click)”事件。事件由事件名標(biāo)識,控件的事件名也是系統(tǒng)規(guī)定好的。要注意記住事件名、事件的含義及其發(fā)生場合。事件一般都是由用戶通過輸入手段或者是系統(tǒng)某些特定的行為產(chǎn)生的。輸入手段如:鼠標(biāo)器在某對象上單擊一次,觸發(fā)Click事件。系統(tǒng)的特定行為如:定時器的時間間隔到,會發(fā)生定時器對象的Tick事件。2/2/202378

面向?qū)ο蟮某绦蛟O(shè)計語言的基本編程模式是事件驅(qū)動。即程序啟動后將根據(jù)發(fā)生的事件執(zhí)行相應(yīng)的事件過程,如果無事件發(fā)生,程序處于空閑狀態(tài),等待新的事件的發(fā)生。因此在這種程序設(shè)計模式下,程序員只需考慮發(fā)生了某事件時,系統(tǒng)應(yīng)該完成的功能,從而編寫實現(xiàn)該功能的對應(yīng)的事件過程代碼,事件過程代碼通常很短,易于編寫。5.事件驅(qū)動的程序設(shè)計2/2/202379例如:工具箱內(nèi)的TextBox是類(它確定了TextBox的屬性、方法和事件)窗體上顯示的是兩個TextBox(文本框)對象3.VB.NET中的類和對象TextBox類TextBox對象句柄2/2/202380屬性、事件和方法構(gòu)成對象的三要素(1)屬性

存放對象的數(shù)據(jù)(決定對象外觀及功能)。設(shè)置方法:設(shè)計階段利用屬性窗口直接設(shè)置屬性值程序運行時通過語句:對象名.屬性名=屬性值

例如:Button1.Text="確定"4.對象的屬性、事件和方法的使用方法

2/2/202381(2)方法方法:對象具有的能力.實現(xiàn):通過系統(tǒng)設(shè)計好的特殊的過程和函數(shù)。調(diào)用方法的語法:對象.方法[參數(shù)名表]例如:Textbox1.Focus此語句使Textbox1控件獲得焦點,光標(biāo)在本文框內(nèi)閃爍。2/2/202382

發(fā)生在對象上的事情同一事件,對不同的對象,會引發(fā)不同的反應(yīng):(3)事件教師_鈴聲()

打開電腦講課EndSub學(xué)生_鈴聲()

聽講記筆記EndSubVB.NET為對象預(yù)先定義了一系列的事件。例如,單擊Click事件、獲取焦點GotFocus事件、按下鍵盤KeyPress事件等

其他人員_鈴聲()

EndSub2/2/202383

是應(yīng)用程序處理事件的步驟應(yīng)用程序設(shè)計的主要工作就是為對象編寫事件過程的代碼。事件過程的形式如下:Sub對象名_事件(對象引用,事件信息)Handles…

事件過程代碼EndSub為了簡化起見,本教材用“…”表示“對象引用,事件信息”。

事件過程2/2/2023841.4VB.NET的集成開發(fā)環(huán)境

1.4.1進(jìn)入VB.NET(實驗室開機時啟動XP2操作系統(tǒng))

鼠標(biāo)單擊屏幕左下角“開始”按鈕移動鼠標(biāo)到“所有程序”移動鼠標(biāo)到“VisualStudio.NET2005”鼠標(biāo)單擊“VisualStudio.NET2005”,進(jìn)入啟動界面2/2/202385鼠標(biāo)單擊“項目”

2/2/2023861VisualBasic、Windows

2Windows應(yīng)用程序

3確定

2/2/202387窗體設(shè)計對象屬性設(shè)置代碼設(shè)計4運行程序2/2/202388調(diào)試結(jié)束后保存項目的所有文件單擊“全部保存”2/2/202389單擊“瀏覽”選擇D盤2/2/202390單擊“打開”2/2/202391輸入項目名稱(也是文件夾名稱)不要選中“創(chuàng)建解決方案的目錄”2單擊“保存”2/2/202392經(jīng)過以上操作后D盤上增加了以下的文件夾和文件等內(nèi)容:Bin、MyProject、Obj、Debug、Release是文件夾,F(xiàn)orm1.vb是窗體文件。MYDIR01.vbproj是項目的再啟動文件,圖標(biāo)如下:D:\MYDIR01BinMyProjectObjDebugReleaseForm1.vbMYDIR01.vbprojMYDIR01.exe項目保存后,當(dāng)前目錄是:D:\MYDIR01\Bin\Debug2/2/202393

若選擇了“創(chuàng)建解決方案的目錄”,則產(chǎn)生同名的子文件夾。操作后D盤上文件夾和文件等內(nèi)容如下:D:\MYDIR01BinMyProjectObjDebugReleaseForm1.vbMYDIR01.vbprojMYDIR01.exeD:\MYDIR012/2/202394

MYDIR01是項目名稱,也是文件夾名稱。Bin目錄有兩個子目錄:Debug目錄保存調(diào)試文件,Release目錄保存發(fā)布文件。MyProject目錄保存項目相關(guān)的設(shè)置文件。Obj目錄保存編譯過程中生成和使用的文件。VB.NET提供解決方案和項目兩種容器來管理開發(fā)工作,如數(shù)據(jù)連接、文件夾、文件等。一個解決方案可以包含多個項目。每個項目包含多個項。解決方案管理器以樹形結(jié)構(gòu)組織項目中的所有相關(guān)項。此解決方案包含1個項目,項目包含4個相關(guān)項。2/2/202395VB.NET集成開發(fā)環(huán)境

輸出解決方案資源管理器窗口屬性窗口菜單欄工具欄工具箱窗口窗體窗口選項卡組欄標(biāo)題欄2/2/2023961.4.2主窗口

標(biāo)題欄:包括標(biāo)題、標(biāo)題欄圖標(biāo)、最小化按鈕、最大化/還原按鈕、關(guān)閉按鈕菜單欄:包括12個下拉菜單,是經(jīng)常使用的菜單項工具欄:以圖標(biāo)方式快速選擇菜單項標(biāo)題欄圖標(biāo)按鈕標(biāo)題2/2/2023971.4.3窗體設(shè)計器窗口/代碼窗口/屬性窗口窗體設(shè)計器窗口:設(shè)計人機交互界面2/2/202398代碼設(shè)計窗口:在資源管理器窗口點擊“查看代碼”圖標(biāo)進(jìn)行代碼設(shè)計(選對象、選事件、寫過程體)對象列表框過程(事件)列表框2/2/202399屬性窗口:設(shè)置對象的屬性值Form1System.Windows.Forms.FormForm1表示此屬性窗口的當(dāng)前對象(顯示句柄的對象)System.Windows.Forms.Form表示Form類,System.Windows.Forms

稱為命名空間屬性窗口分兩列:左列是屬性名稱右列為屬性值不同的屬性可能具有不相同類型的值:數(shù)值型、邏輯型(布爾型)、枚舉型、字符串型、文件型、結(jié)構(gòu)型等。按分類順序按字母順序2/2/20231001.4.4解決方案資源管理器窗口/工具箱窗口/窗口布局

解決方案:本書所有的解決方案都只包含一個項目。資源管理器窗口包括項目名、窗體名等工具箱窗口:包括公共控件、對話框控件、數(shù)據(jù)控件項目名稱2/2/2023101

“工具箱”中包含了可重用的控件(或稱組件)。程序員可在窗體中“拖放”控件,繪制出應(yīng)用程序界面??丶凇肮ぞ呦洹敝惺且越M的形式出現(xiàn)的,如“數(shù)據(jù)”組、“組件”組、“所有Windows窗體”組等。通過單擊組名稱能展開一個組。組的第一項不是控件,它是鼠標(biāo)指針,單擊它后可以取消對控件的選擇,以便重新選擇其它控件。最初,“工具箱”可能會隱藏起來,而僅僅是在IDE的邊上顯示出工具箱窗口名稱。移動鼠標(biāo)指針到工具箱窗口名字上能打開這個窗口,鼠標(biāo)指針移出工具箱窗口時窗口會消失,這是自動隱藏特性。2/2/2023102工具箱窗口中常用的控件如下:控件所屬類名中文解釋圖標(biāo)功能1Button按鈕單擊它時發(fā)生事件3CheckBox復(fù)選框選擇或清除關(guān)聯(lián)選項4ComboBox組合框文本框和下拉列表5Label標(biāo)簽為控件提供說明性文字6ListBox列表框選擇項列表7PictureBox圖片框顯示圖像8RadioButton單選按鈕選擇單個選項9RichTextBox富文本框高級文本編輯功能2/2/2023103工具箱窗口中常用的控件如下:控件所屬類名中文解釋圖標(biāo)功能10TextBox文本框編輯文本11GroupBox控件分組建立分組框架12VScrollBor垂直滾動條垂直滾動刻度13HScrollBar水平滾動條水平滾動刻度14Timer定時器按定義的間隔引發(fā)事件15ProgressBar進(jìn)度條操作進(jìn)度填充條2/2/2023104窗口布局:當(dāng)界面設(shè)計時改變了窗體的布局,可通過:“窗口”→“重置窗體布局”恢復(fù)默認(rèn)的窗體布局2/2/2023105實驗室安裝的VisualStudio.NET2005系統(tǒng)與本教材的版本略有不同。(實驗室的版本沒有保留安裝系統(tǒng)的備份盤,此版本在市場上難以找得到)教材的版本是先設(shè)計程序,然后保存。實驗室的版本是先保存項目,然后進(jìn)行設(shè)計。實驗室的版本操作步驟如下:2/2/2023106鼠標(biāo)單擊“項目”

2/2/20231072輸入項目名稱選盤符和路徑2/2/2023108不選“創(chuàng)建解決方案的目錄”確定2/2/2023109窗體設(shè)計對象屬性設(shè)置代碼設(shè)計4運行程序2/2/20231101.5

簡單應(yīng)用程序建立1.建立一個應(yīng)用程序分為以下幾步進(jìn)行:①分析問題,明確目標(biāo)②建立用戶界面的對象;③對象屬性的設(shè)置;④對象事件過程及編程;⑤程序調(diào)試和運行程序。⑥保存文件解決什么問題,已知數(shù)據(jù)有哪些進(jìn)行什么處理(計算公式等)

求得結(jié)果是什么已知數(shù)據(jù)輸入計算結(jié)果顯示就要考慮用哪些控件展示在用戶面前的形式進(jìn)行的處理

運行結(jié)果最后保存2/2/20231112.例1.2編寫一個人民幣與美元相互兌換的程序建立用戶界面的控件設(shè)置屬性分析已知數(shù)據(jù)、如何計算、計算結(jié)果例1.2特殊符號使用軟鍵盤輸入2/2/2023112對象屬性設(shè)置:Nane(控件名)Text(文本屬性)Form1(窗體)人民幣與美圓兌換Label1(標(biāo)簽)人民幣匯率美圓TextBox1(文本框)TextBox2(文本框)TextBox3(文本框)2/2/2023113Nane(控件名)Text(文本屬性)Button1(按鈕)清屏Button2(按鈕)¥→$Button3(按鈕)$→¥Button4(按鈕)結(jié)束特殊符號使用軟鍵盤輸入:1.切換輸入法到中文狀態(tài)(Ctrl+Shift)2.鼠標(biāo)右鍵單擊軟鍵盤2/2/2023114對象事件過程及編程Val()函數(shù)將數(shù)字字符串轉(zhuǎn)換成數(shù)值型,F(xiàn)ormat函數(shù)將t保留2位小數(shù)2/2/2023115保存項目調(diào)試運行項目名稱項目路徑不選“文件”,“全部保存”2/2/2023116

文件組成窗體名稱項目名稱也是子文件夾名可啟動的項目文件2/2/2023117文件組成(兌換是用戶輸入的項目名(子文件夾名))程序存盤后將建立一個文件夾,包含如下內(nèi)容:兌換

.sln

項目關(guān)聯(lián)、配置等的信息

兌換

.suo開發(fā)環(huán)境選項的信息

兌換

.vbproj項目文件(雙擊時打開此項目)

Form1.vb

窗體文件(雙擊時打開此窗體)

AssemblyInfo.vb項目集合信息(系統(tǒng)自動建立)

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論