版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
VisualBasic程序設(shè)計(jì)教程第1頁第一章VB程序設(shè)計(jì)概述程序設(shè)計(jì)基本概念:計(jì)算機(jī)工作是由程序來控制。程序是指令集合。指令是計(jì)算機(jī)能夠識別命令。第2頁計(jì)算機(jī)語言發(fā)展機(jī)器語言:由計(jì)算機(jī)硬件系統(tǒng)能夠識別二進(jìn)制指令組成語言。比如:101110011101缺點(diǎn):難懂,調(diào)試?yán)щy。第3頁計(jì)算機(jī)語言發(fā)展匯編語言:將機(jī)器指令轉(zhuǎn)換成為一些能夠被人讀懂助記符,如ADD、SUB等。比如:ADDCX,DX將DX中數(shù)值加進(jìn)CX。經(jīng)過匯編后執(zhí)行。與硬件聯(lián)絡(luò)親密,與人類自然語言相差較大。第4頁計(jì)算機(jī)語言發(fā)展高級語言:屏蔽了機(jī)器細(xì)節(jié),程序采取含有含義數(shù)據(jù)命名和輕易了解執(zhí)行語句,類似英語和數(shù)學(xué)表示式。比如:Ify<3Thenz=x+y經(jīng)過解釋或編譯后執(zhí)行。如:VB、C++、Java、Labview第5頁VB應(yīng)用特點(diǎn)應(yīng)用廣泛易于掌握、靈活實(shí)用(Beginner’sAll-purposeSymbolicInstructionCode)結(jié)構(gòu)齊全第6頁VisualBasic發(fā)展20世紀(jì)60年出現(xiàn)Basic語言;20世紀(jì)80年代,TrueBasic、QuickBasic和TurboBasic等;1991年Microsoft企業(yè)推出VisualBasic1.0,以可視化工具為界面設(shè)計(jì)、結(jié)構(gòu)化Basic語言為基礎(chǔ),以事件驅(qū)動為運(yùn)行機(jī)制。從1991年VB1.0至1998年VB6.0屢次版本升級,功效更強(qiáng)大、完善,應(yīng)用面更廣;正式公布VisualBasic.NET。第7頁VB集成開發(fā)環(huán)境第8頁1.主窗口應(yīng)用程序窗口,由標(biāo)題欄、菜單欄和工具欄組成。2.窗體(form)窗口窗體是一塊畫布,是全部控件容器,用戶能夠依據(jù)自己需要利用工具箱上控件在畫布上設(shè)計(jì)VB程序界面。3.代碼(code)窗口編輯窗體、標(biāo)準(zhǔn)模塊中代碼。4.屬性(properties)窗口全部窗體或控件屬性設(shè)置。5.工程資源管理器(projectexpror)窗口保留一個應(yīng)用程序全部文件。6.工具箱(toolbox)窗口顯示各種控件制作工具,供用戶在窗體上設(shè)計(jì)。VB集成開發(fā)環(huán)境第9頁例1.1制作一個用戶登錄界面第10頁例1.2滾動廣告字幕動畫演示:
第11頁
VB功效特點(diǎn)1.含有基于對象可視化設(shè)計(jì)工具;2.事件驅(qū)動編程機(jī)制;3.提供了易學(xué)易用應(yīng)用程序集成開發(fā)環(huán)境;4.結(jié)構(gòu)化程序設(shè)計(jì)語言;5.強(qiáng)大網(wǎng)絡(luò)、數(shù)據(jù)庫、多媒體功效;6.完備help聯(lián)機(jī)幫助功效。第12頁創(chuàng)建應(yīng)用程序過程1.建立用戶界面對象;2.對象屬性設(shè)置;3.對象事件過程及編程;4.程序運(yùn)行和調(diào)試;5.保留程序,生成可執(zhí)行文件。第13頁使用幫助系統(tǒng)使用MSDNLibrary查閱器。經(jīng)過VB幫助菜單,選擇內(nèi)容、索引或搜索菜單項(xiàng)
第14頁第二章VB可視化編程基礎(chǔ)2.1VB對象概念2.2窗體和基本控件2.3綜合應(yīng)用
第15頁VB對象概念對象和類:對象指現(xiàn)實(shí)世界中實(shí)體。如一個人、一輛汽車、一臺電腦、一份報(bào)表等。每個對象有自己特征(屬性)、行為(方法)和發(fā)生在該對象上活動(事件)。比如人含有身高、體重等特征,含有行走、說話等行為,外界作用在人對象上各種活動,以下雨等。第16頁
在現(xiàn)實(shí)世界中,許多對象含有相同性質(zhì),執(zhí)行相同操作,稱之為同一類對象。類是對同一個對象集合與抽象。如人類是“人”抽象。類是創(chuàng)建對象實(shí)例模板,對象則是類一個實(shí)例。VB對象概念第17頁對象屬性、事件和方法對象三要素:屬性、事件、方法。屬性:描述和反應(yīng)對象特征參數(shù)。事件:發(fā)生在對象上,能夠被其識別活動。事件發(fā)生在用戶與應(yīng)用程序交互時(shí),如單擊控件、鼠標(biāo)移動、鍵盤按下等。方法:對象行為和動作,指使對象動作命令。
VB中將一些通用過程編寫好并封裝起來,作為方法供用戶直接調(diào)用。第18頁VB中類和對象比如:工具箱內(nèi)TextBox是類(它確定了TextBox屬性、方法和事件)窗體上顯示是兩個TextBox對象。第19頁對象屬性設(shè)置設(shè)置屬性方法:在界面設(shè)計(jì)時(shí)經(jīng)過屬性窗口直接設(shè)置對象屬性值。在程序運(yùn)行中動態(tài)地更改對象屬性,經(jīng)過賦值語句,在代碼窗口編程設(shè)置。
對象名.屬性名=屬性值比如:Label4.FontSize=18Command1.Visible=True第20頁事件和事件過程VB為對象預(yù)先定義了一系列事件。比如,單擊Click、獲取焦點(diǎn)GotFocus、按下鍵盤KeyPress等事件過程應(yīng)用程序處理事件步驟。應(yīng)用程序設(shè)計(jì)主要工作就是為對象編寫事件過程代碼。事件過程形式以下:Sub對象名_事件(參數(shù))
… 事件過程代碼EndSub第21頁例:單擊按鈕,使Text1字體為20磅.SubCommand1_Click()
Text1.FontSize=20EndSub注意:在代碼窗,自動產(chǎn)生事件過程模板,不要修改模板內(nèi)容,只需鍵入過程代碼。模板產(chǎn)生用戶輸入事件和事件過程第22頁程序執(zhí)行次序與程序設(shè)計(jì)者無關(guān),取決于用戶操作,這就是事件驅(qū)動程序設(shè)計(jì)方式。VB程序執(zhí)行步驟以下:①
開啟應(yīng)用程序,裝載和顯示窗體;②
窗體(或窗體上控件)等候事件發(fā)生;③
事件發(fā)生時(shí),執(zhí)行對應(yīng)事件過程;④
重復(fù)執(zhí)行步驟②和③。事件驅(qū)動23第23頁窗體和基本控件一、通用屬性
1.Name名稱屬性創(chuàng)建對象名稱,有默認(rèn)名。在程序中,控件名是作為對象標(biāo)識而引用,不會顯示在窗體上。
2.Caption標(biāo)題屬性 該屬性決定了控件上顯示內(nèi)容。3.Height、width、top和left屬性第24頁4.Enabled屬性控件是否可操作。當(dāng)設(shè)置為false時(shí),呈暗淡色,禁止用戶進(jìn)行操作。5.Visible屬性控件是否可見。當(dāng)設(shè)置為false時(shí),用戶看不到,但控件本身存在。6.Font屬性
Fontname:字體;Fontsize:字體大小;Fontbold:是否是粗體;Fontitalic:是否斜體;Fontstrikethru:是否加一刪除線。Fontunderline:是否帶下劃線。
例2.1在窗體上建立兩個命令按鈕Command1和Command2,Command2Font經(jīng)過屬性窗口設(shè)置,其余屬性經(jīng)過代碼實(shí)現(xiàn)。第25頁7.Forecolor前景顏色屬性設(shè)置控件前景顏色(即正文顏色)。其值是一個十六進(jìn)制常數(shù),用戶能夠在調(diào)色板中直接選擇所需顏色。8.Backcolor背景顏色屬性9.控件默認(rèn)屬性反應(yīng)該控件最主要屬性,使用時(shí)可省略屬性名??丶J(rèn)屬性控件默認(rèn)屬性文本框命令按鈕單項(xiàng)選擇按鈕TextDefaultValue標(biāo)簽圖形、圖像框復(fù)選框CaptionPictureValue第26頁二、窗體1.屬性
CaptionControlBoxPictureBorderStyle(012345)WindowsState(0-正常、1-最小化、2-最大化)2.事件
Click、DblClick和Load
Load當(dāng)裝入窗體時(shí)激發(fā),通慣用于對屬性和變量初始化3.方法Print、Cls和Move等
方法是面向?qū)ο?,故其使用形式為:[對象.]方法第27頁P(yáng)rint方法
形式:[對象.]Print表示式作用:在對象上輸出信息。對象:窗體、圖形框或打印機(jī)(Printer),省略對象在窗體上輸出比如:Form1.Print“歡迎使用VB6.0”Cls方法形式:[對象.]Cls作用:去除運(yùn)行時(shí)在窗體或圖形框中顯示文本或圖形。注意:不去除在設(shè)計(jì)時(shí)文本和圖形。Move方法
形式:[對象.]MoveLeft[,Top[,Width[,Height]]]作用:移動窗體或控件,并可改變其大小。對象:能夠是窗體及除時(shí)鐘、菜單外全部控件。第28頁比如:雙擊窗體,使其移動到屏幕左上角,而且面積減小二分之一。PrivateSubForm_DblClick()Form1.Move0,0,Form1.Width/2,Form1.Height/2EndSub第29頁水平滾動字幕:SubMymove()Label1.movelabel1.left+200IfLabel1.left>Form1.widthThenLabel1.left=0EndSub第30頁三、標(biāo)簽Label用于顯示文本(輸出)信息,不能作為輸入信息界面。第31頁四、文本框是一個文本編輯區(qū)域,可在該區(qū)域輸入,編輯和顯示正文內(nèi)容。
主要屬性
Text:正文內(nèi)容;Maxlength:設(shè)置正文最多字符個數(shù),0任意長度值;MultiLine:是否為多行,默認(rèn)為一行,F(xiàn)alse;ScrollBars:MultiLine為True時(shí),該屬性才有效,表示滾動條形式0-None、1-Horizontal、2-Vertical、3-Both;Locked:是否可被編輯屬性,F(xiàn)alse,表示為可編輯。PassWord:口令字符;Text屬性返回輸入數(shù)據(jù),屏幕顯示該字符;SelStart、SelLength、SelText:選漢字本起始、長度、內(nèi)容。第32頁例2-4文本編輯器第33頁程序代碼:PrivateSubForm_Click()Text1.SelStart=0Text1.SelLength=8Text2.Text=Text1.SelTextEndSub第34頁慣用事件
Change:當(dāng)改變文本框Text屬性時(shí)會引發(fā)該事件。KeyPress(KeyAsciiAsInteger):同上,并可返回一個KeyAscii參數(shù)即所按鍵值存放在參數(shù)KeyAscii中。比如:對回車判斷
KeyAscii=13LostFocus:當(dāng)控件失去焦點(diǎn)時(shí)發(fā)生。GotFocus:當(dāng)控件取得焦點(diǎn)時(shí)發(fā)生。慣用方法
[對象.]SetFocus:是把光標(biāo)移到指定文本框?qū)ο笾小1热纾篢ext1.SetFoucs例2-5文本框大小寫字母轉(zhuǎn)換,以KeyPress為驅(qū)動事件。第35頁程序代碼:PrivateSubCommand1_Click()Text1.Text=""Text2.Text=""EndSubPrivateSubCommand2_Click()EndEndSub第36頁P(yáng)rivateSubText1_KeyPress(KeyAsciiAsInteger)DimaaAsString*1aa=Chr$(KeyAscii)'將ASCII碼轉(zhuǎn)換成字符SelectCaseaaCase"A"To"Z"'大寫轉(zhuǎn)換成小寫aa=Chr$(KeyAscii+32)Case"a"To"z"'小寫轉(zhuǎn)換成大寫aa=Chr$(KeyAscii-32)Case""CaseElseaa="*"EndSelect'將轉(zhuǎn)換文本框已經(jīng)有內(nèi)容與剛輸入并轉(zhuǎn)換字符連接Text2.Text=Text2.Text&aaEndSub第37頁五、命令按鈕
主要屬性Caption:命令按鈕顯示內(nèi)容,可設(shè)置快捷鍵,例&Ok,顯示Ok。Style:確定顯示形式,0只能顯示文字,1文字、圖形均可。Picture:按鈕可顯示圖片文件(.bmp和.Ico),當(dāng)Style為1時(shí)有效。ToolTipText:設(shè)置圖形按鈕文字提醒,和Picture結(jié)合使用。事件
Click第38頁例2-6建立一個允許剪切、復(fù)制和粘貼簡單記事本程序。
綜合應(yīng)用第39頁程序代碼:DimstAsStringPrivateSubCommand1_Click()st=Text1.SelTextText1.SelText=""EndSubPrivateSubCommand2_Click()st=Text1.SelTextEndSubPrivateSubCommand3_Click()Text1.SelText=stEndSubPrivateSubCommand4_Click()Text1.FontName="黑體"EndSubPrivateSubCommand5_Click()Text1.FontSize=20EndSubPrivateSubCommand6_Click()EndEndSub第40頁例2-7利用文本框,實(shí)現(xiàn)加法運(yùn)算。第41頁程序代碼:PrivateSubText1_LostFocus()IfNotIsNumeric(Text1)ThenText1=""Text1.SetFocusEndIfEndSubPrivateSubText2_KeyPress(KeyAsciiAsInteger)IfKeyAscii=13ThenIfNotIsNumeric(Text2)ThenText2=""EndIfEndIfEndSubPrivateSubText3_GotFocus()Text3=Val(Text1)+Val(Text2)EndSub第42頁本章小節(jié)類是同種對象集合與抽象,包含所創(chuàng)建對象屬性描述和行為特征定義,是創(chuàng)建對象實(shí)例模板。對象三要素:屬性、事件、方法窗體是全部控件容器基本控件標(biāo)簽、文本框、命令按鈕第43頁Move方法形式:[對象.]MoveLeft[,Top[,Width[,Height]]]比如:Command1.Move0,50,Command1.Width/2第44頁從右至左滾動字幕:SubMymove()Label1.movelabel1.left-200IfLabel1.left<0ThenLabel1.left=Form1.widthEndSub第45頁第三章VB語言基礎(chǔ)
數(shù)據(jù)類型
變量和常量
運(yùn)算符和表示式
程序結(jié)構(gòu)和編碼規(guī)則第46頁數(shù)據(jù)類型第47頁數(shù)值型數(shù)據(jù)
(1)整數(shù)整型:Integer占2字節(jié)類型符為%范圍:-32768—32767比如:123、-456、30289%長整型:Long占4字節(jié)類型符為&范圍:-2147483648—2147483647比如:-1234567&、396&
(2)浮點(diǎn)數(shù)又稱實(shí)數(shù),是帶有小數(shù)部分?jǐn)?shù)值,并可表示為指數(shù)形式。單精度:Single占4字節(jié)類型符為!范圍:-3.4×10-38—3.4×10+38精度達(dá)7位。比如:342.54、1.543E+8、0.453E-4雙精度:Double占8字節(jié)類型符為#范圍:-1.7×10-308—1.7×10+308
精度達(dá)15位。比如:342.54#、3.432D+67、0.453E-4#第48頁數(shù)值型數(shù)據(jù)(3)貨幣類型Currency占8字節(jié)類型符為@,用于貨幣計(jì)算范圍:小數(shù)點(diǎn)左邊15位,小數(shù)點(diǎn)右邊4位比如:2347@、3.548@(4)字節(jié)類型Byte占1字節(jié)無類型符范圍:0-255
占一個字節(jié)無符號整數(shù)。第49頁字符型數(shù)據(jù)字符型:String,類型符為$,用于存放字符型數(shù)據(jù),包含全部西文字符和漢字及符號,用雙引號括起。范圍:0—65535個字符。比如:“abc”、“45gssk”、“程序設(shè)計(jì)”、“123”注意:“”表示空字符,“”表示有一個空格字符。第50頁邏輯型數(shù)據(jù)
只有True(真)和False(假)兩個值,以兩個字節(jié)存放。用于邏輯判斷和邏輯運(yùn)算。
日期型數(shù)據(jù)
用于表示時(shí)期、時(shí)間,占8字節(jié),用#括起來表示。日期范圍:01.01.100----12.31.9999時(shí)間范圍:0:00:00—23:59:59比如:#-7-1212:30:36PM#、#January15,#、#07/13/#、#05/12/#第51頁變體型數(shù)據(jù)
全部未定義變量默認(rèn)為變體型數(shù)據(jù),能夠是數(shù)值型、字符型、日期型等,依據(jù)程序運(yùn)行需要來處理。編程習(xí)慣應(yīng)“先申明變量,后使用變量”。使用變體型數(shù)據(jù)內(nèi)存空間大,運(yùn)行效率低,不易于調(diào)試。對象型數(shù)據(jù)用于存放程序?qū)ο蟮刂?,如控件對象,?字節(jié)。如:Command2、Form1第52頁VB基本數(shù)據(jù)類型第53頁變量在程序運(yùn)行過程中,其值能夠改變量稱為變量。變量需含有:名字、數(shù)據(jù)類型和作用域。經(jīng)過Dim語句來申明變量:形式:Dim變量名As數(shù)據(jù)類型比如:DimAAsIntegerDimabcAsString,sumAsSingle等價(jià)于:Dimabc$,sum!即可用類型符代替“As類型”。第54頁變量申明比如:DimxAsInteger,yAsInteger,zAsInteger不能寫作:Dimx,y,zAsIntegerDimm,nAsInteger,x,yAsSingle
則創(chuàng)建了變體型變量m、x,整型變量n和單精度型變量y第55頁變量命名規(guī)則必須以字母或漢字開頭,由字母、漢字、數(shù)字或下劃線組成,長度小于等于255個字符不能使用VB中關(guān)鍵字,如If、ThenVB不區(qū)分變量名大小寫,普通變量名首字母用大寫,其余用小寫字母表示;常量全部用大寫字母表示。第56頁變量命名規(guī)則正當(dāng)變量名:A,x3,BOOK_1,sum5,Doc2,abc非法變量名:3st(不能以數(shù)字開頭)s*T(出現(xiàn)非法字符*)dwht(變量名不能有空格)DimSinAsInteger(Sin是函數(shù)名)x-y(變量名中不能出現(xiàn)減號)第57頁變量命名規(guī)則練習(xí):以下變量名是否正當(dāng)?a123、a123、a12_3、123_a、yhgx、integer、Sum、Label1、變量名、Avg.1、strName第58頁變量默認(rèn)初值數(shù)值型變量:0字符串變量:“”(空)邏輯變量:False如:PrivateSubForm1_Click()DimaAsIntegera=a+2Printa
EndSub第59頁隱式申明對變量不加申明而直接使用,其類型為Variant類型。比如:PrivateSubForm1_Click()a=10:b=20Sum=a+bPrint“Sum=”;Sum
EndSub
提議不使用。注意:在通用申明處加OptionExplicit語句可強(qiáng)制顯式申明變量。第60頁常量在程序運(yùn)行過程中,其值不能改變量稱為常量。1、直接常量各種類型常數(shù)值,其常數(shù)值直接反應(yīng)了其類型。
如:123、-123、123%均為整型123&為長整型123.45、123.45!、0.12E+3均為單精度型123.45#為雙精度型123.45@為貨幣型#03/12/#、#-12-3112:30:00PM#均為日期型“12345”、“asddf234”、“程序設(shè)計(jì)”均為字符型。第61頁常量2、用戶申明符號常量由用戶定義符號來表示常量。形式:Const符號常量名[As類型]=表示式比如:ConstPI=3.14159申明符號常量PI,代表3.14159,單精度型
ConstCOUNTS#=45.67
’COUNTS代表了雙精度數(shù)45.67第62頁常量3、系統(tǒng)提供常量系統(tǒng)提供許多內(nèi)部常量,在VB中是以vb為前綴。比如:vbRed表示紅色vbNormal表示正常Form1.WindowsState=vbNormal’窗口正常Form1.WindowsState=vbMaximized’窗口最大化第63頁運(yùn)算符和表示式運(yùn)算符是表示實(shí)現(xiàn)某種運(yùn)算符號。VB中運(yùn)算符可分為:1、算術(shù)運(yùn)算符2、字符串運(yùn)算符3、關(guān)系運(yùn)算符4、邏輯運(yùn)算符第64頁算術(shù)運(yùn)算符^-*/\mod+—優(yōu)先級別:從左向右是由高到低。如:2^383*2627^(1/3)310/33.3333333333333310\3310mod3130-True31False+10+”4”14
算術(shù)運(yùn)算符兩邊應(yīng)是數(shù)值型,如是字符型或邏輯型,則自動轉(zhuǎn)換成數(shù)值型再運(yùn)算。第65頁算術(shù)運(yùn)算符ia=3第66頁算術(shù)表示式表示式中全部運(yùn)算符和操作數(shù)都是并排。a*b*c*d/e/f/g或a*b*c*d/(e*f*g)
數(shù)學(xué)表示式:(3x+y)-z(xy)4
VB表示式:sqr((3*x+y)-z)/(x*y)^4sin(45*3.14/180)+(exp(10)+log(10))/sqr(x+y+1)第67頁算術(shù)表示式乘號不能省略。例:應(yīng)為:S=3.14*r^2括號必須成對出現(xiàn)(均使用圓括號)。表示式:Abs(x+y)+z^5表示式:(-b+Sqr(b*b-4*a*c))/(2*a)表示式:(2*3.14*r+exp(-5))*log(x)第68頁數(shù)據(jù)類型轉(zhuǎn)換算術(shù)運(yùn)算中,假如操作數(shù)含有不一樣精度,則運(yùn)算結(jié)果數(shù)據(jù)類型采取精度高數(shù)據(jù)類型。轉(zhuǎn)換規(guī)則:Integer<Long<Single<Double<Currency當(dāng)Long型數(shù)據(jù)與Single型數(shù)據(jù)運(yùn)算時(shí),結(jié)果為Double型。第69頁字符串運(yùn)算符&、+,將兩個字符串連接起來。比如:“abcd”+“DFEG”結(jié)果:“abcdDFEG”“100”&“sdgf”結(jié)果:“100sdgf”&兩旁操作數(shù)可任意,均轉(zhuǎn)換成字符型后再連接。&與兩旁操作數(shù)之間要加空格。比如:操作結(jié)果"ab"&123"ab123" "12"&456"12456" "12"&True"12True" 第70頁字符串運(yùn)算符+兩旁操作數(shù)應(yīng)均為字符型。若操作數(shù)為數(shù)值型,則進(jìn)行加法運(yùn)算。若一為數(shù)字字符,一為數(shù)值型,則自動將數(shù)字字符轉(zhuǎn)換為數(shù)值后進(jìn)行加法運(yùn)算。若一個為非數(shù)字字符,另一個為數(shù)值型,犯錯。比如:“12”+456結(jié)果:468
“1”+“12345”結(jié)果:112345“ab”+12結(jié)果:犯錯1+”123”&100結(jié)果:12123100第71頁關(guān)系運(yùn)算符關(guān)系運(yùn)算符作用是對兩個操作數(shù)進(jìn)行大小比較,若關(guān)系成立,則返回True,不然返回False。操作數(shù)能夠是數(shù)值型、字符型。運(yùn)算符例結(jié)果="ABCDE"="ABR"False>"ABCDE">"ABR"False>="bc">="abcde
"True<23<3False<="23"<="3"
True<>"abc"<>"abcde
"True第72頁關(guān)系運(yùn)算符比較規(guī)則:
1、字符比較時(shí)是按其ASCII碼值比較大小,而且是從左向右一個一個字符比較。2、漢字字符是按拼音為序進(jìn)行比較。而且漢字字符大于西文字符。3、數(shù)值型數(shù)據(jù),直接按其大小進(jìn)行比較。第73頁邏輯運(yùn)算符邏輯運(yùn)算符作用是將操作數(shù)進(jìn)行邏輯運(yùn)算,結(jié)果是邏輯值True或False。第74頁邏輯表示式例1:選拔優(yōu)異生條件為:年紀(jì)(Age)小于19歲,三門課總分(Total)高于285分,其中有一門為100分,其表示式寫為:Age<19AndTotal>285And(Mark1=100OrMark2=100OrMark3=100)例2:表示x是5或者7倍數(shù)。第75頁運(yùn)算符優(yōu)先級算術(shù)運(yùn)算符>字符運(yùn)算符>關(guān)系運(yùn)算符>邏輯運(yùn)算符例題:表示算術(shù)表示式:
正確VB表示式:3<=xAndx<=7
錯誤VB表示式:3<=x<=7或3<=xOrx<=7思索:a小數(shù)b大數(shù)第76頁例題在Text1中輸入一個小于100正整數(shù),判斷輸入數(shù)據(jù)是否正確,若正確則計(jì)算其平方根,不然清空Text1重新輸入。第77頁程序代碼PrivateSubCommand1_Click()a=Val(Text1)Ifa>=100Ora<=0OrInt(a)<>aThenText1=""Text1.SetFocusElseText2=Sqr(a)EndIfEndSub第78頁慣用函數(shù)VB函數(shù)包含:內(nèi)部函數(shù)和用戶自定義函數(shù)內(nèi)部函數(shù)數(shù)學(xué)函數(shù)轉(zhuǎn)換函數(shù)字符串函數(shù)日期函數(shù)Shell函數(shù)第79頁數(shù)學(xué)函數(shù)-43Int(-3.5)Int(3.5)取小于或等于N最大整數(shù)Int(N)2.3Log(10)自然對數(shù)Log(N)-33Fix(-3.5)Fix(3.9)取整Fix(N)20.086Exp(3)enExp(N)1Cos(0)余弦函數(shù)Cos(N)3.5Abs(-3.5)取絕對值A(chǔ)bs(N)結(jié)果實(shí)例含義函數(shù)名第80頁數(shù)學(xué)函數(shù)0Tan(0)正切函數(shù)Tan(N)3Sqr(9)平方根Sqr(N)-1Sgn(-3.5)符號函數(shù)Sgn(N)0Sin(0)正弦函數(shù)Sin(N)-44Round(-3.5)Round(3.5)四舍五入取整Round(N)[0,1)之間數(shù)Rnd產(chǎn)生隨機(jī)數(shù)Rnd[(N)]結(jié)果實(shí)例含義函數(shù)名第81頁數(shù)學(xué)函數(shù)例:Int(3.2)=3Int(3)=3Int(6.8)=6Int(-3.4)=-4Rnd函數(shù)生成[0,1)雙精度隨機(jī)數(shù)。例:在馬上窗口經(jīng)過printRnd語句觀察隨機(jī)函數(shù)運(yùn)行效果。第82頁應(yīng)用舉例試驗(yàn)B-3我國有13億人口,年增加率0.8%,多少年后人口超出26億。計(jì)算結(jié)果以整數(shù)形式輸出。PrivateSubCommand1_Click()n=Int(Log(2)/Log(1.008)+1)Label1=n&"年后人數(shù)超出26億"EndSub第83頁應(yīng)用舉例生成一個0~100之間隨機(jī)整數(shù)。產(chǎn)生[0,1)隨機(jī)數(shù):Rnd產(chǎn)生[0,100)隨機(jī)數(shù):Rnd*100產(chǎn)生[0,100)隨機(jī)整數(shù):Int(Rnd*100)問題1:生成[0,100]范圍內(nèi)隨機(jī)整數(shù)。問題2:生成[100,200]隨機(jī)整數(shù)。問題3:生成[30,50]隨機(jī)整數(shù)。第84頁試驗(yàn)B-5隨機(jī)產(chǎn)生一個3位正整數(shù),然后逆序輸出,產(chǎn)生隨機(jī)數(shù)與其逆序數(shù)同時(shí)顯示。PrivateSubCommand1_Click()Text1=Int(Rnd*900+100)EndSubPrivateSubCommand2_Click()Dimx%,x1%,x2%,x3%x=Val(Text1)x1=xMod10x2=(xMod100)\10x3=x\100Text2=x1*100+x2*10+x3EndSub第85頁轉(zhuǎn)換函數(shù)"ABC"Ucase("abc")小寫字母轉(zhuǎn)為大寫字母Ucase(C)"144"Oct$(100)十進(jìn)制轉(zhuǎn)換成八進(jìn)制Oct(N)"123.45"Str$(123.45)數(shù)值轉(zhuǎn)換為字符串Str(N)123Val("123AB")數(shù)字字符串轉(zhuǎn)換為數(shù)值Val(C)"abc"Lcase("ABC")大寫字母轉(zhuǎn)為小寫字母Lcase$(C)64Hex(100)十進(jìn)制轉(zhuǎn)換成十六進(jìn)制Hex(N)"A"Chr(65)ASCII碼值轉(zhuǎn)換成字符Chr(N)-11-13CDate("/11/13")轉(zhuǎn)換成日期型CDate65Asc("A")字符轉(zhuǎn)換成ASCII碼值A(chǔ)sc(C)結(jié)果實(shí)例功效
函數(shù)名第86頁字符串函數(shù)"BCD"Mid("ABCDE",2,3)取字符子串Mid(C,N1[,N2])"ABCD"Trim("ABCD")去掉字符串兩邊空格Trim(C)"A3AB3"Replace("ACDABCD","CD","3")用C2替換C1Replace(C,C1,C2)"
"Space(3)產(chǎn)生N個空格字符串
Space(N)4Len("AB教育")字符串長度Len(C)"ABC"Left("ABCDE",3)取字符串左邊n個字符Left(C,N)6InStr("EFABCDEFG",“DE")在C1中找C2,若找不到則結(jié)果為0InStr(C1,C2)結(jié)果實(shí)例說明
函數(shù)名第87頁日期函數(shù)Second(#1:12:56PM#)返回秒(0~59)Second(C|N)Time返回系統(tǒng)時(shí)間TimeYear(Now)返回年代號(1753~2078)Year(C|N)Now返回系統(tǒng)日期和時(shí)間NowMonth(",05,01")返回月份代號(1~12)Month(C|N)Minute(#1:12:56PM#)返回分鐘(0~59)Minute(C|N)Hour(#1:12:56PM#)返回小時(shí)(0~24)Hour(C|N)Day(",05,01")返回日期代號(1~31)Day(C|N)Date返回系統(tǒng)日期Date實(shí)例說明
函數(shù)名第88頁日期函數(shù)例:計(jì)算從當(dāng)前日期到6月30日有多少天?表示式為:DateDiff("d",Now,#-6-30#)計(jì)算從當(dāng)前日期到6月30日有多少周?表示式為:DateDiff(“ww”,Now,#-6-30#)計(jì)算從2月14日增加兩周后日期:DateAdd("ww",2,#-2-14#)第89頁Shell函數(shù)Shell函數(shù)可調(diào)用各種應(yīng)用程序。格式以下:
Shell(命令字符串[,窗口類型])函數(shù)調(diào)用成功返回一個任務(wù)標(biāo)識ID,不成功則返回0。例
i=Shell("calc.exe”,1)
j=Shell(“Mspaint.exe”,1)要執(zhí)行應(yīng)用程序(擴(kuò)展名為.com.exe.bat),包含路徑執(zhí)行時(shí)窗口大小,范圍0~4、6,普通取1表示正常大小。第90頁程序結(jié)構(gòu)第91頁編碼規(guī)則(1)VB代碼不區(qū)分字母大小寫關(guān)鍵字首字母自動轉(zhuǎn)換成大寫,其余字母轉(zhuǎn)換成小寫。用戶自定義變量、過程名,以第一次定義為準(zhǔn),以后輸入自動向首次定義形式轉(zhuǎn)換。(2)語句書寫自由一行上可書寫多句語句(用冒號分隔),一行最多255個字符。單行語句可分若干行書寫,在本行后加入續(xù)行符(空格和下劃線)。第92頁綜合例題模仿Word字處理軟件,實(shí)現(xiàn)字符串查找替換功效。第93頁綜合例題實(shí)現(xiàn)思緒:利用替換(Replace)函數(shù)實(shí)現(xiàn)替換功效。利用查找(InStr)、取子串(Left、Mid)等函數(shù)實(shí)現(xiàn)替換功效。利用Shell函數(shù)調(diào)用winword.exe執(zhí)行Word程序?qū)崿F(xiàn)替換功效。第94頁綜合例題程序代碼:PrivateSubCommand2_Clic
溫馨提示
- 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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024至2030年中國超硬合金分切上圓刀行業(yè)投資前景及策略咨詢研究報(bào)告
- 2024至2030年中國消防卷盤行業(yè)投資前景及策略咨詢研究報(bào)告
- 2024至2030年陶瓷耐火纖維紙項(xiàng)目投資價(jià)值分析報(bào)告
- 2024至2030年辛酸亞錫項(xiàng)目投資價(jià)值分析報(bào)告
- 2024至2030年氨微素項(xiàng)目投資價(jià)值分析報(bào)告
- 2024至2030年半自動熒光磁粉探傷裝置項(xiàng)目投資價(jià)值分析報(bào)告
- 2024至2030年UV-P紫外線吸收劑項(xiàng)目投資價(jià)值分析報(bào)告
- 2024至2030年防沖板項(xiàng)目投資價(jià)值分析報(bào)告
- 2024版租賃房產(chǎn)居間合同租賃登記備案與過戶范本3篇
- 2024版餐飲企業(yè)廚師招聘與團(tuán)隊(duì)建設(shè)合同3篇
- 舞蹈演出編導(dǎo)排練合同模板
- 滬科版2024-2025學(xué)年七年級數(shù)學(xué)上冊計(jì)算專題訓(xùn)練專題18期末復(fù)習(xí)-四大必考題型總結(jié)(學(xué)生版+解析)
- 2024短劇行業(yè)發(fā)展趨勢分析報(bào)告
- 中國法律史-001-國開機(jī)考復(fù)習(xí)資料
- 2024年人教版一上數(shù)學(xué)期末測試卷(一)增改版(含答案)
- 北京市西城區(qū)2023-2024學(xué)年六年級上學(xué)期語文期末試卷(含答案)
- 期末綜合測試卷(試題)-2024-2025學(xué)年五年級上冊數(shù)學(xué)人教版
- 【MOOC】模擬電子技術(shù)-中南大學(xué) 中國大學(xué)慕課MOOC答案
- 【MOOC】線性代數(shù)-同濟(jì)大學(xué) 中國大學(xué)慕課MOOC答案
- 建筑施工安全知識培訓(xùn)
- 項(xiàng)目經(jīng)理或管理招聘面試題與參考回答
評論
0/150
提交評論