visual basic程序設計 (2)_第1頁
已閱讀1頁,還剩320頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、Visual Basic程序設計及應用,主講教師:唐大仕dstang2000@263.net,,北京大學課程,有關事項,參考書Visual Basic 程序設計,唐大仕,清華大學出版社,2003 (叢書主編:盧湘鴻)Visual Basic 程序設計題解與上機指導唐大仕,清華大學出版社,2003,,教學網(wǎng)站校內:http://cf.pku.cn/tds備份:http://www.dstang.com/cf2 與唐大仕

2、老師聯(lián)系dstang2000@263.net QQ:351116463上機時間星期四9-10節(jié), 地點3、5、6號機房,課程要求,不遲到、不曠課完成參考資料的閱讀、練習等課后任務按時交作業(yè),1 序論,,程序與語言的概念,為什么要學習程序設計軟件=程序+文檔程序:指令的序列語言匯編語言 asm : 用助記符來表示計算指令高級語言 c, pascal, fortran, 用表達式來表示計算用過程來表示流程面向

3、對象的語言 c++, java,vb用對象來表示實現(xiàn)世界每個對象有自己的屬性、功能、能與外界交互,Visual Basic簡介,一種程序設計環(huán)境一種程序設計語言具有廣泛的用途,VB 快速入門單擊?右擊?雙擊,設計與運行,界面設計(插入對象,設其屬性)(對象窗)代碼設計(雙擊對象,填寫代碼)(代碼窗)運行按F5(或點“啟動”按鈕)示例:按鈕?信息,示例:按鈕?信息,在程序中書寫:MsgBox "Hel

4、lo!"編程提示: 要用西文標點、空格單擊“啟動”按鈕才會運行單擊“結束”按鈕才可以進一步修改,保存,保存窗體文件.frm工程文件.vbp其他輔助文件編程提示:文件應保存在自已的文件夾中,不要放在VB98下下次打開這個程序,只需雙擊.vbp文件即可每一個程序都要單獨建一個工程每個程序放在單獨的文件夾中交作業(yè)時,將文件夾中的所有文件壓縮成一個文件,編譯,編譯編譯就是將源程序轉成可執(zhí)行程序的過程怎樣

5、編譯文件?生成xxxxx.exe文件編程提示:exe是交給最終用戶的,編程者不需要它,一些典型應用,,一些專題知識,自己設計一個屏幕保護程序;自己設計一個多媒體播放器;自己設計一個小游戲;信息安全與密碼問題;軟件工程,程序漏洞的原因;信息管理系統(tǒng);網(wǎng)上信息交流,聊天,游戲的原理;電子商務的基本構成方式;計算機智能及其局限性;分形圖形與計算機藝術;等等。,課程目標,1. 程序以Visual Basic為工具掌

6、握程序設計的基本概念和基本方法具備使用程序來解決一些實際問題的能力2. 應用通過程序來提高Word、Excel、網(wǎng)頁制作等常用軟件的應用能力了解病毒防護、數(shù)據(jù)加密、企業(yè)信息化、電子政務、人工智能、數(shù)字藝術等專題知識以簡明的程序來介紹,不是十分注重編程技巧技術,而是重在理解其本質。,VB程序設計環(huán)境,工程窗口 對象窗口代碼窗屬性窗工具箱,注意區(qū)分三種狀態(tài),設計狀態(tài)運行狀態(tài)中斷狀態(tài),小結,程序、軟件與語言Visu

7、al Basic是一種高級語言設計界面設計代碼設計運行保存編譯,Visual Basic程序設計,主講教師:唐大仕dstang2000@263.net,,北京大學課程,2 VB程序設計的核心概念,,VB中的對象,屬性(property)對象的狀態(tài),用名詞、形容詞表示方法 (method)對象的動作或功能,用動詞表示事件 (event)對象與外界的交互,屬性的書寫,對象.屬性 Command1.Caption

8、 = “xxxxx”Text1.ForeColor = vbRedMe.BackColor = RGB( 255, 0, 0 )注:Me表示窗體Me.BackColor=RGB( Rnd*255, Rnd*255, Rnd*255)注:Rnd表示隨機數(shù)(范圍0到1之間,不包括1)注意用等號,方法的書寫,對象.方法Command1.Move 1000,500Me.Print "Hello"注意

9、:屬性和方法都可以智能提示若沒有提示,經(jīng)常都因為寫錯了對象名寫錯了對象名,運行時會提示“需要對象”可以用Me.來正確地書寫對象名,事件的書寫,Private Sub 對象名_事件名( … … )寫書代碼……End Sub一般不用手工書寫可直接在代碼窗的頂部選擇對象名及事件名事件驅動示例 :MouseMove事件 參見文件event_drive.frmMe.Caption = x & ",&q

10、uot; & y注意:& 表示連接,& 前后需要一個空格,示例:事件?改變屬性,改變字體、大小、顏色注意: = 表示賦值 a= a+1,進一步理解對象,,對象命名,對象名對象名(Name)與文字(Caption/Text)不同窗體名.控件名,匈牙利命名法,對象命名的慣例:匈牙利命名法前綴(表類型) + 單詞(表意義) 例:btnSayHello btnOk c

11、mdOk,特殊對象名,事先定義好的對象 Me, Screen, Printer , App, Debug注:Me表示當前窗體Me.可省略Me.Left = (Screen.Width- Me.Width)/2操作技巧: Ctrl+J 快速提示 vbXxxxx F2 對象瀏覽,幾種常用對象,按鈕 CommandButton 前綴btn標簽 Label

12、 lbl文本框 TextBox txt圖片框 PictureBox pic注:如果要在按鈕上加圖片必須首先設設Style 然后再設Picture,DownPicture,常見的屬性,NameForeColor, BackColor FontSize FontName Top Left Width HeightC

13、aption/ Picture/ Text / ValueVisiable Enabled,默認屬性,對象有一個默認屬性(屬性值)如:Label的Caption, Text的Text如: Text1.Text = "...." 可寫為 Text1 = "....",常見的方法,Move (適用于各種控件)Print (適用于窗體及圖片框)S

14、how / Hide (適用于窗體),常見的事件,有關Mouse, keyboard,有關選擇,文字改變,事件驅動編程,對象之間的相互作用示例:兩個文本框顯示同樣的文本文本框的change事件跳動的小球Shape形狀對象: Shape FillColor FillStyleTimer計時器對象: IntervalShape1.Left = Shape1.Left + Rnd*1000-500Me.Caption

15、 = NowForm_Load事件變色的彩燈Shape1.FillColor,使用幫助,按F1鍵 進入MSDN(要求安裝了MSDN)使用網(wǎng)絡上的MSDN進入 http://msdn.microsoft.com 選 > Library > Development Tools and Languages > Visual Studio 6.0 > Visual Basic 6.0 > 按

16、F2鍵 進入對象瀏覽窗口按Ctrl+J 鍵 進入快速提示使用vb5的中文幫助,可從教學網(wǎng)上下載,網(wǎng)絡上的資源,國內http://www.vbgood.com/ http://www.vbaspnew.com http://vbworld.sxnw.gov.cn/http://www.vbdak.net/國外http://msdn.microsoft.com/vbasic/http://www.vb-helpe

17、r.com/http://www.planet-source-code.com/ 使用搜索引擎www.baidu.com www.google.com 討論區(qū)bbs.pku.cn, bbs.tsinghua.edu.cn 上的VB討論區(qū),小結,Visual Basic程序設計語言是一種面向對象的高級語言Visual Basic程序設計環(huán)境是一種易用的、集成化的、可視化編程環(huán)境Visual Basic程序設計核心概念對

18、象:屬性、方法、事件事件驅動編程,Visual Basic程序設計,主講教師:唐大仕dstang2000@263.net,,北京大學課程,3 數(shù)據(jù)與運算,,數(shù)據(jù)與運算,數(shù)據(jù):常量與變量數(shù)據(jù)的類型Me.Height = 3000 數(shù)值Command1.Caption = "Press Me" 文字Label1.Visible = False 邏輯Me.Print Now

19、 日期時間不同的類型:數(shù)據(jù)的含義不同數(shù)據(jù)的運算不同數(shù)據(jù)的存儲方式不同,數(shù)據(jù)類型,類型 占字節(jié)數(shù)整型 Integer 2 ( 范圍 -32768~32767) 長整型 Long 4單精度 Single 4雙精度 Double 8。,數(shù)據(jù)類型(續(xù)),邏輯型 Boolean 2 值能為

20、 True 或 False日期型 Date 8字符串型 String 變體型 Variant對象型 Object,變量,變量的含義變量的名字用字母、數(shù)字、下劃線構成不能用數(shù)字開頭,變量的定義,隱式定義不定義而直接賦值顯式定義 使用DIM 例 Dim age As IntegerDim iCount% As Integer, salary As DoubleDim s

21、tudentName As String,字面常量的書寫,整數(shù)、實數(shù) 類似于數(shù)學中的寫法 如 123 -45 123.45 2.3E-5 4# 十六進制 &H0027D9長整數(shù) 1234&日期 #9:21:30 PM# #7/21/99# 邏輯 True False字符 "Hello"

22、"A" "",符號常量,Const PI As Double =3.14,運算符,算術運算 +(加) - (減) *(乘) /(除) \(整除) mod(取余)^(乘方)字符串連接 & +關系運算 > = 邏輯運算 And Or Not,表達式,表達式舉例:參 表達式.txt,運算符的優(yōu)先級,優(yōu)先級(從高到低):算術運算(其中 ^

23、? */ ? \ ? +- )關系運算 (> = < )邏輯運算(其中Not?And?Or)用圓括號,程序的基本任務,輸入?處理?輸出示例:圓的面積Dim r As Double, area As DoubleConst Pi As Double = 3.14r = InputBox("請輸入半徑")area = Pi * r * rMsgBox "半徑為"

24、& r & "的圓的面積是" & area注意:要定義變量,關于數(shù)據(jù)類型的幾個細節(jié),類型的不嚴格如 Me.Caption = Now()如 r = Text1.Text精度問題如 i = 5.6 i=5.5 i=5.4,示例,求解一元二次方程用文本框來表示輸入、輸出用按鈕來表示命令對象名一定要寫正確注意公式中用Sqr表平方根,注意圓括號,數(shù)學函數(shù),RndInt(Rn

25、d * 9) + 1注:Randomize 表示隨機初始化Sqr,Abs 平方根,絕對值Sin, Cos 正弦、余弦(弧度作單位)Log, Exp 自然對數(shù)、指數(shù)Int 取整(不超過它的最大整數(shù))示例:rnd_luckynum Rnd_投針 Sqr_triangle_area,字符串函數(shù),Len 求長度LTrim, RTrim, Trim 去空格UCase, LCase 大寫、小寫Left, Ri

26、ght, Mid 左邊、右邊、中間InStr 在字符串的子串位置Asc, Chr, String 求ASCII碼、轉字符、重復字符,日期函數(shù),Date, Time, Now 當前日期、時間、Year, Month, Day, Weekday 求年、月等Hour, Minute, Second 求時、分、秒,轉換及判斷,CInt, CLng, CDbl, CDate, CStr 轉成相應的類型Str, Val 轉

27、成字符串,轉成數(shù)字Hex, Oct 轉成十六進制,八進制FormatFormat( Now(), "hh:mm:ss" )Format( 3.14, "#,###.000" )IsNumeric, IsDate 是否為數(shù)字、為日期,重要函數(shù)列表,I/O: MsgBox InputBox Beep數(shù)學: Rnd Abs Int Sqr Sin Cos Log Exp字符串:

28、 Len LTrim RTrim Trim UCase Mid Left Right InStr Chr Asc日期: Date Time Now Year Month Day轉換判斷 CInt Val Format IsDate IsNumeric,小專題:VB的函數(shù)與Excel函數(shù),+ - * / \ Mod ^And Or NotRnd Abs Int

29、Sqr Sin Cos Log ExpLen LTrim RTrim Trim UCase LCase Mid Left Right InStr Chr AscDate Now Year Month DayCInt Val Format IsDate IsNumeric,+ - * / Mod() ^And() Or() Not()Rand Abs Int Sqrt Sin Cos Log Exp

30、Len LTrim RTrim Trim Upper Lower Mid Left Right Find Char Code Today Now Year Month DayInt Value Format IsDate IsNumber,Excel函數(shù)舉例,在學生名單表中排序字段=MID(A2,4,2)& "_" & A2隨機選擇 =INDEX(A2:A161, RA

31、ND()*161+1 )查找=VLOOKUP(D2,A2:B161,2,FALSE),小結,數(shù)據(jù)類型常量與變量運算符常用函數(shù),Visual Basic程序設計,主講教師:唐大仕dstang2000@263.net,,北京大學課程,4 語句與分支控制,,VB語言,程序設計語言的兩個重要方面:數(shù)據(jù)控制,簡單語句,簡單語句一句一行多句同行 (用: )一句跨多行(用 _ ),注釋,對程序的執(zhí)行沒有影響用單引號開始,

32、直到行尾注釋的用途:對一段程序對一些變量對一些算法,賦值語句 =,示例: a=a+1 示例: 移動的小球示例:交換兩變量值,輸入與輸出,程序的基本過程:輸入?處理?輸出輸入輸出的常見方法:使用控件進行輸入(如TextBox)輸出(如Label)使用InputBox, MsgBox 使用Print表示輸出,Print的使用,Print換行不換行(,或;)示例:圓的面積方法 Print, cls ,

33、與; 示例: a *b = c,If條件語句,兩種寫法:同一行: If 條件 Then … Else …多行: If 條件 Then … Else … End If,,示例,示例:小球移動,但不出邊界要點1:使用變量要點2:使用If示例:閏年y Mod 400 = 0 Or y Mod 100 0 And y Mod 4 = 0要點1:使用Mod要點2:使用

34、And 及 Or,條件語句嵌套,條件語句的嵌套示例:性別,年齡的判斷示例: 判斷圓的半徑編程提示:使用Tab鍵正確地縮進,ElseIf,示例:分數(shù)的判斷示例:所得稅的計算,Select Case,Select case 表達式 case 常量 。。。。 case 常量 。。。。 case else …. End Select示例: 分數(shù),示例: 自動出題及判分,

35、If 及 Select Case的使用變量的使用注意,a,b,op三個變量是放到最前面的(不在Sub內,被稱為窗體級變量)隨機數(shù)的使用RndRandomize 隨機數(shù)初始化,一般在Form_Load中據(jù)Rnd的數(shù)值來表示不同的字符,如+-*/,IIF函數(shù),IIf(條件, 式1, 式2 )例如: M = IIf( a>b, a, b )z = IIf( a<1, “小”, IIf( a=1, “等”,

36、 “大”) ),小專題:關于隨機數(shù),偽隨機數(shù)線性同余算法Xn+1 = (Xn * a + c ) mod m,其中m>0稱為模數(shù),0≤ a <m稱為乘數(shù),0≤c <m稱為增量,0≤X0<m稱為初始值或種子如 X = ( X * 123 + 59 ) mod 65535如 X = ( X * 20

37、53 + 13849 ) mod 65535如 a取 69069或 1664525(即&H19660D),Java語言中用的公式,synchronized public void setSeed(long seed) { this.seed = (seed ^ 0x5DEECE66DL) & ((1L >> (48 - bits)); } Donald Knuth, The Art of Comput

38、er Programming, Volume 2, Section 3.2.1.,C語言中用的公式,unsigned long int next = 1; int rand(void) { next = next * 1103515245 + 12345; return (unsigned int)(next/65536) % 32768; }void srand(unsigned int s

39、eed) { next = seed; },生成標準正態(tài)分布的隨機數(shù),產(chǎn)生方法很多。近似方法(利用中心極限定理)即用 個 變量產(chǎn)生一個 變量。其中 是抽自 的隨機數(shù), 可近似為一 個 變量。簡單地說:6個均勻分布的隨機數(shù)的平均值是一個正態(tài)分布的隨機數(shù),蒲豐氏(Buffon)問題,如果針的長度是平行間的距離的一半,則:Pi = 總數(shù) /

40、 相交的針,針在平行線間的位置,蒙特卡羅(Monte Carlo)方法,蒙特卡洛方法是一種應用隨機數(shù)來進行計算機模擬的方法.此方法對研究的系統(tǒng)進行隨機觀察抽樣,通過對樣本值的觀察統(tǒng)計,求得所研究系統(tǒng)的某些參數(shù).蒙特卡羅方法的主要應用范圍包括:粒子輸運問題,統(tǒng)計物理,典型數(shù)學問題,真空技術,激光技術以及醫(yī)學,生物,探礦等方面。隨著科學技術的發(fā)展,其應用范圍將更加廣泛。蒙特卡羅方法在粒子輸運問題中的應用范圍主要包括:實驗核物理,反應堆物

41、理,高能物理等方面。蒙特卡羅方法在實驗核物理中的應用范圍主要包括:通量及反應率,中子探測效率,光子探測效率,光子能量沉積譜及響應函數(shù),氣體正比計數(shù)管反沖質子譜,多次散射與通量衰減修正等方面。,,在我們所生活的世界上,充滿了不確定性,小結,簡單語句輸入及輸出If/ElseIf語句Select Case語句,Visual Basic程序設計,主講教師:唐大仕dstang2000@263.net,,北京大學課程,5 循環(huán)語句、繪圖,

42、,三種控制結構,為什么要有循環(huán)程序的三種控制結構順序分支(選擇)循環(huán),程序流程圖,流程線開始與結束 任務及子任務輸入與輸出條件判斷,,,,,,For語句,For v=1 To 100 Step 2 …Next其中 Step 1可以省略,使用 For語句,示例 顯示1-100畫同心圓1+2+…+1001*1+2*2 +...+100*1006^3+....+69^3,Do Loop,Do W

43、hile 條件 。。。Loop 示例:角谷猜想,Do 循環(huán)的幾種寫法,Do While 條件 (或:Until條件) 。。。Loop Do 。。。(至少執(zhí)行一次循環(huán))Loop While 條件 (或:Until條件)While 條件。。。Wend,循環(huán)的五要素,初始化循環(huán)條件循環(huán)動作循環(huán)改變結束后處理,理解循環(huán),1變量 5要素 3典型幾種循環(huán)的比較,繪圖,在哪里繪圖:在窗體上

44、 如: Me.Circle (1000,1000),300在PictureBox上 如: Picture1.Circle (1,1),1,單位及比例尺,比例尺 .ScaleMode =vbTwips 1/1440 inch =vbPixels 像素 Scale (-50,50)-(50,-50) ScaleLeft ScaleTop ScaleWidth ScaleHeight,,Sc

45、ale (-50,50)-(50,-50),繪圖狀態(tài),CurrentX=100, CurrentY=100ForeColor BackColor DrawWidth DrawStyleFillColor FillStyleDrawMode (決定最終顏色與當前畫筆顏色、背景顏色的關系)=vbCopyPen, =vbXorPenFontFontSize, FontName,FontBold, F

46、ontItalic,繪圖方法,Line (x,y)-(x,y), color, BF其中B表示畫框、BF表示畫填充的矩形Circle (x,y), r, colorCircle (x,y), r, color, start, end, aspectPSet (x,y), colorPrint "....."Cls 清屏示例:draw_Simple_0.frm,繪圖示例,函數(shù)圖螺線畫極坐標圖

47、旋轉的橢圓 編程提示:Form_Load中繪圖,先Me.Show,上機注意事項,1.關于文件2.關于圖片3.關于內容4.關于書寫,循環(huán)出口語句,Exit For示例: 判斷質數(shù)Exit Do其他幾個相關的語句:Exit Sub退出此段Sub子程序End結束整個程序Stop停止執(zhí)行,進入中斷狀態(tài),循環(huán)的嵌套,示例畫圖(多張餅)1! +2! +…. +10!九九乘法表2-100以內的角谷猜想內外

48、循環(huán)的關系每重循環(huán)的控制變量控制變量間的關系,循環(huán)的應用(了解),數(shù)列求和: ---遞推法1! + 2! +…. + 10!2+22+222+…Exp_sumPi/2Pi/4,循環(huán)的應用,字符串加密,附:關于密碼與加密,口令(password)原則:自己易記、他人難猜、經(jīng)常更改技巧:不與自己直接相關,而是間接相關并且不能太短,字母、數(shù)字、符號混合在公共場合使用口令要謹慎不能讓IE記住口令注意防護:一些口令破

49、解軟件,如Advanced Pdf password covery如Rar Password Cracker, Passware防止木馬,口令使用經(jīng)驗談,不要使用本人的生日、身份證件號碼、銀行賬戶中的前幾位、后幾位或姓名的拼音作為密碼。不要將密碼設置為相同的數(shù)字或字母,盡量使用數(shù)字與字母的組合構成密碼不要將密碼設置為有順序的數(shù)字或字母不要將網(wǎng)上銀行“登錄密碼”和“交易密碼”設置成相同的密碼在任何情況下不能將密碼漏給他人,

50、包括銀行工作人員在使用網(wǎng)上銀行時,最好不要直接用鍵盤輸入密碼,而用“密碼軟鍵盤”輸入密碼,常見的安全措施—正確使用網(wǎng)銀,常見方式“釣魚”“釣魚”之一:電子郵件“釣魚”之二:盜號木馬“釣魚”之三:網(wǎng)址欺騙防釣魚直接輸入域名用密碼軟鍵盤加密交易信息使用加密控件,使用密碼U盤,使用https協(xié)議同樣,防止短信詐騙,,,,,加密技術,加密技術:把信息轉換成一種不可讀或不可理解的形式,解密技術,四種傳統(tǒng)加密方法,1.代碼加密

51、2.替換加密3.變位加密4.一次性密碼簿加密,對稱密碼術(單一密鑰),加密算法:CHARACTER+3,AF計劃,接收者,發(fā)送者,DES算法,DES是對稱密鑰加密的算法, DES算法大致可以分成四個部分: (1)初始置換 (2)迭代過程 (3)逆置換和 (4)子密鑰生成,,DES加密原理示意圖,,非對稱密碼術,公共密鑰,私有密鑰,我,其他人,RSA算法,RSA算法是非對稱密鑰加密,其算法演算過程(1

52、)密鑰配制過程(2)加密(3)解密,RSA舉例,取兩個質數(shù)p=11,q=13,p和q的乘積為n=p×q=143,算出另一個數(shù)z=(p-1)×(q-1)=120;再選取一個與z=120互質的數(shù),例如e=7,則公開密鑰=(n,e)=(143,7)。對于這個e值,可以算出其逆:d=103。因為e×d=7×103=721,滿足e×d mod z =1;即721 mod 120=1成

53、立。則秘密密鑰=(n,d)=(143,103)。,設張小姐需要發(fā)送機密信息(明文)m=85給李先生,她已經(jīng)從公開媒體得到了李先生的公開密鑰(n,e)=(143,7),于是她算出加密值:c= me mod n=857 mod 143=123并發(fā)送給李先生。李先生在收到密文c=123后,利用只有他自己知道的秘密密鑰計算:m= cd mod n =123103 mod 143=85,所以,李先生可以得到張小姐發(fā)給他的真正的信息m=85,

54、實現(xiàn)了解密。,RSA的安全性就目前的計算機水平用1024位的密鑰是安全的,2048位是絕對安全的。RSA實驗室認為,512位的n已不夠安全,應停止使用,現(xiàn)在的個人需要用668位的n,公司要用1024位的n,極其重要的場合應該用2048位的n。,RSA用于身份驗證和數(shù)字簽名數(shù)字簽名必須保證以下3點:接收者能夠核實發(fā)送者對報文的簽名。發(fā)送者事后不能抵賴對報文的簽名。接收者不能偽造對報文的簽名?,F(xiàn)在已有多種實現(xiàn)各種數(shù)字方法,但簽名

55、的采用公開密鑰算法要比常規(guī)算法更容易實現(xiàn)。,電子簽名,電子簽名(比數(shù)字簽名更廣泛的概念)注:媒體 _vir_fingerprint_F0914.avi注:《電子簽名法》注:www.icbc.com.cn 中國工商行 usbkey客戶證書注:outlook express 電子郵件加密及簽名注:http://www.ca365.com 申請免費試用證書保證:信息除發(fā)送方和接收方外不被其它人竊??;信息在傳輸過程中不被篡改;

56、發(fā)送方能夠通過數(shù)字證書來確認接收方的身份;發(fā)送方對于自己的信息不能抵賴。,密鑰與密碼破譯方法,(1)密鑰的窮盡搜索破譯密文就是嘗試所有可能的密鑰組合。雖然大多數(shù)的密鑰嘗試都是失敗的,但最終有一個密鑰讓破譯者得到原文,這個過程稱為密鑰的窮盡搜索。(2)密碼分析已知明文的破譯方法選定明文的破譯方法(3)其他方法“窺視”或“偷竊”密鑰內容;進行“垃圾分析”;等等,防止密碼破譯的措施,(1)強壯的加密算法(2)動態(tài)會話密鑰(

57、3)保護關鍵密鑰,小結,控制結構與流程圖For Next語句Do Loop語句循環(huán)出口語句循環(huán)的嵌套循環(huán)的應用----數(shù)列求和,Visual Basic程序設計,主講教師:唐大仕dstang2000@263.net,,北京大學課程,6 過程、函數(shù)、數(shù)組,,過程,學習 VB語言:單詞?語句?篇章使用過程的好處任務分解代碼重用示例:sub_print100,事件過程與普通過程,事件過程與某個對象事件相關過程名為

58、: 對象名_事件名如: Sub Command1_Click()如: Sub Form_Load()普通過程與事件無關表示某項任務,過程的定義,Sub 過程名(參數(shù) As 類型,。。。) 。。。End Sub,過程的調用,使用Call Call 過程名 (參數(shù)值。。。) 注意,要用括號或省略Call過程名 參數(shù)值,。。。 注意,不用括號一個參數(shù)時,可用括號,也可不用示例:畫花兒示例:s

59、ub_delay 注:second, do loop,函數(shù),函數(shù)也是一種子程序是一種帶返回值的過程內建函數(shù)已由VB定義好,可直接使用如: CInt(), Int(), Rnd(), Now(),I/O函數(shù),MsgBox有關按鈕圖標/有關返回值MsgBox "hello", vbInformationInputBox有關默認值/有關返回值a = InputBox(" Please I

60、nput a num", , 99),函數(shù)的定義,Function 函數(shù)名(參數(shù),。。。)As 類型 。。。注意:其中有一句 : 函數(shù)名=某個值End Function,函數(shù)的調用,一般用于表達式: 函數(shù)名 (參數(shù)值。。。) 用括號示例:sub_fac_10: 求:1!+2!+……+10!求組合數(shù) m!/n!/(m-n)!100以內的質數(shù),參數(shù)的傳遞,形參與實參

61、參數(shù)的傳遞順序按位置傳遞,傳值與引用,傳值 ByVal 傳引用 ByRef (缺省為ByRef)傳引用就是傳變量本身示例簡單示例fun_digi2Sum,模塊,模塊工程/添加模塊設定啟動對象:工程/屬性/啟動對象模塊中的變量/過程模塊名.過程名Public 與 Private 過程過程缺省是Public的,變量的作用域,作用域(可見性)全程變量 Public 或 Global 窗體級變量

62、Private 或 Dim局部變量 Dim示例,數(shù)組,數(shù)組的概念加上下標來決定是哪個變量定義數(shù)組 Dim 數(shù)組名(數(shù)組大小) As 類型使用數(shù)組數(shù)組名(下標)For Each……Next,數(shù)組的大小,下標 Dim a(100) 表示0—100共101個 Dim a( 2 to 9 ) Option Base 0 或 1 規(guī)定起始值二維數(shù)組 dim c(10,20)

63、Lbound(數(shù)組名) 求最小下標Ubound(數(shù)組名) 求最大下標,數(shù)組的應用,最大值與平均值排序統(tǒng)計篩法求素數(shù)(*)約瑟夫問題(*)畫金剛石體育彩票36選7,小結,過程函數(shù)參數(shù)傳遞過程中的變量,Visual Basic程序設計,主講教師:唐大仕dstang2000@263.net,,北京大學課程,7 控件,,界面設計,界面設計的重要性界面元素控件窗體繪圖菜單其他,有關控件的使用,怎樣得到控件

64、相關的屬性、方法與事件:Ctrl_J 快速提示 F1 --MSDN(如果安裝了MSDN)F2 --Object Browser可以參考其他一些資源光盤,如:>書籍,如: >www.vb-helper.com (國外,選其中“search”)http://www.vb60.com http://music.crzz.com/vb/ http://moonsoft.com/e_commerce/so

65、ft/download/other/index7.htm,控件的一般屬性,Alignment 對齊方式 0 vbLeftJustify 1 vbRightJustify 2 vbCenterAppearance 0 1:3DAutoSize True FalseBackColor ForeColorRGB(r,g,b) vbRed vbGreen QBC

66、olor(Rnd * 15)123235& &Hrrggbb&,控件的一般屬性(續(xù)),BorderStyle CaptionFont xxx.Font.Bold = true xxx.Font.Italic = Truexxx.Font.Underline = True xxx.Font.Size = 24 xxx.Font.Name = "宋體"

67、 或 xxx.FontName = "宋體"Left Top Width Height,控件的一般屬性(續(xù)),MousePointerMouseIcon(當MousePointer為99時,設MouseIcon)Picture設計時:選擇文件 (注意:當程序拷貝到其他機器時,由于圖片找不到,則會出問題,所以不推薦這種方式)粘貼圖片 (這時圖片信息存于.frx文件中)運行時:xxx.Pictur

68、e = LoadPicture(“xxx.jpg”)注意,圖片文件放到同一目錄中,要使用擴展名(如.jpg),控件的一般屬性(續(xù)),ToolTipTextUseUnemonic caption中用&表示下劃線,如 "&Open"Visiable: True FalseEnabled: True False如Timer1.Enabled = False如Command1.En

69、abled = FalseWordWrapMultiLine,CommandButton 按鈕,Caption Style, Picture使之為圖片按鈕 補充示例:PicButton.frm ToolTipText Enabled,Label 標簽,CaptionToolTipText, AutoSize, WordWrap, Alignment0 vbLeftJustify 1 vbRight

70、Justify 2 vbCenter例: Label_mouse_shell_263 注:shell "程序名 參數(shù)" 表示調用外部程序,TextBox 文本框,SelStart, SelLength, SelText, TextMultiLine, ScrollBarsPasswordChar "*"Locked,EnabledSetFocus方法, GotFocus

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論