版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
VisualBasic編程基礎
第2章本章要點事件驅動編程機制窗體及基本控件幾個常用的語句1.對象的概念在現(xiàn)實生活中,對象是具有某些特性的具體事物,如一個人、一臺電腦等;在面向對象程序中,對象就是系統(tǒng)中運行的基本實體,如一個窗體、一個命令按鈕等。
任何一個對象都有屬性、事件和方法三個要素,各從不同的角度表達了對象的構成,通過三者有機的結合,便構成一個完整的VB應用程序。2.1事件驅動編程機制2.1.1對象和類的概念
2.類的概念類是同種對象的集合與抽象,它包含所創(chuàng)建對象的屬性描述和行為特征的定義。類是對象的定義,而對象是類的一個實例。如汽車是類,某一輛具體的小轎車是對象。在VB中,工具箱中的可視類圖標是VB系統(tǒng)設計好的標準控件類,此外,還可在“工程”菜單的“部件”項中加入大量的ActiveX控件。當在窗體上畫一個控件時就是將類實例化(把類轉換為對象),即創(chuàng)建了一個控件對象,簡稱控件。2.1事件驅動編程機制2.1.1對象和類的概念
內部控件ActiveX控件
(前20個)控件類:2.1事件驅動編程機制2.1.1對象和類的概念
對象類2.1事件驅動編程機制2.1.1對象和類的概念
對象屬性屬性解釋屬性顯示方式(1)利用“屬性”窗口編輯對象的屬性
在“工程設計”窗口選中要設置屬性的對象,選擇“視圖”菜單“屬性窗口”項,打開“屬性”窗口;或右擊對象,在快捷菜單選擇“屬性窗口”。2.1事件驅動編程機制2.1.2對象的屬性、方法和事件
(2)利用屬性設置語句格式1:[<父類名>].<對象名>.屬性名=<屬性值>
例:PrivateSubForm_Load()Cmd1.Caption="退出"Cmd1.Left=4680Cmd1.Top=5280Cmd1.Height=615Cmd1.Width=1335EndSub2.1事件驅動編程機制2.1.2對象的屬性、方法和事件
格式2:With<對象名><屬性值表>Endwith例:PrivateSubForm_Load()WithCmd1.Caption="退出".Left=4680.Top=5280.Height=615.Width=1335EndWithEndSub2.1事件驅動編程機制2.1.2對象的屬性、方法和事件
定義事件過程的語句格式:
PrivateSub對象名稱_事件名稱([(參數(shù)列表)])
<程序代碼>
EndSub例如:PrivateSubCommand1_Click()
Command1.FontSize=20'字體大小為20磅
……
EndSub注意:用戶對一個對象發(fā)出一個動作時,可能同時觸發(fā)多個事件(如Click、MouseDown、MouseUp),寫程序時只需對感興趣的事件過程編碼,沒有編碼的空事件不加處理。2.1事件驅動編程機制2.1.2對象的屬性、方法和事件
3.方法
方法是附屬于對象的行為和動作,也可以將其理解為指示對象動作的命令,即VB系統(tǒng)提供的一種特殊的過程和函數(shù)。
VB中的內部控件都具有定義好的方法,不同的對象有不同的方法。(請見附錄)調用方法的語句格式:
[<對象名>].方法名
例如:Form1.Print“GoodMorning!”
Picture1.Cls2.1事件驅動編程機制2.1.2對象的屬性、方法和事件
4.利用“代碼”窗口編輯對象的事件和方法
(1)在“工程設計”窗口選中某一對象,選擇“視圖”菜單“代碼窗口”項,或使用右鍵菜單,或雙擊某一對象,打開其“代碼”窗口;(2)在“代碼”窗口通過“對象”組合框選擇對象,通過“事件”組合框選擇事件,系統(tǒng)自動給出事件過程的開頭和結束語句。(3)在過程的開頭和結束語句之間輸入代碼。2.1事件驅動編程機制2.1.2對象的屬性、方法和事件
兩個基本要點:
(1)應用程序由對象組成,每個對象都有預先定義的事件,每個事件的發(fā)生都依賴于一定的條件(即用戶的驅動或來自系統(tǒng)的觸發(fā))。(2)每個事件發(fā)生后系統(tǒng)該作出什么反應,則取決于用戶給該事件過程編寫了什么代碼,即由用戶控制事件的發(fā)生,由代碼做出響應。
2.1事件驅動編程機制2.1.3事件驅動編程的基本要點
2.1事件驅動編程機制
例2-1建立一個顯示當前時間的窗體,將窗體名稱改為frmTime。在窗體上添加3個命令按鈕,將它們的名稱屬性分別改為CmdRed、CmdBlue和CmdExit,Caption屬性分別設置為“紅色顯示”、“藍色顯示”和“退出”。再添加一個標簽按鈕,不修改其名稱。利用VisualBasic的Time函數(shù)獲取當前的系統(tǒng)時間,并在標簽中顯示時間。要求程序一啟動就在標簽中顯示機器的當前時間,若單擊CmdRed按鈕標簽中的時間紅色顯示,單擊CmdBlue按鈕時間以藍色顯示,單擊CmdExit按鈕則結束程序運行。2.1.3事件驅動編程的基本要點
2.1事件驅動編程機制程序演示2.1.3事件驅動編程的基本要點
(4)窗體邊框風格:BorderStyle屬性(5)窗體顯示狀態(tài):WindowsState屬性(6)其它屬性:
BackColor、Picture、ForeColor、
FontName、FontSize、FontBold、FontItalic、
FontStrikeThru、FontUnderLine、Enabled、Visible、AutoRedraw2.2窗體及基本控件2.2.1窗體對象
2.窗體常用的方法
(1)Print方法:在窗體上輸出表達式的值。
(2)Cls方法:清除在窗體顯示的文本或圖形。
(3)Move方法:移動窗體并可改變其大小。(4)Show方法:<窗體名>.Show
功能:在屏幕上顯示一個窗體。(5)Hide方法:<窗體名>.Hide
功能:使指定的窗體隱藏起來,但不從內存中
刪除窗體。2.2窗體及基本控件2.2.1窗體對象
3.窗體常用的事件
(1)Load:窗體被裝入時觸發(fā)的事件,該事件通常用來在啟動應用程序時對屬性和變量進行初始化。(2)Click:單擊窗體時觸發(fā)的事件。(3)DblClick:雙擊窗體時觸發(fā)的事件。(4)Activate事件:當窗體變成活動窗體時,觸發(fā)該事件。(5)UnLoad事件:將窗體從內存中卸載時,觸發(fā)該事件。2.2窗體及基本控件2.2.1窗體對象
應用示例
例2-3
創(chuàng)建兩個窗體,通過Form_Click()事件實現(xiàn)兩個窗體的切換。
2.2窗體及基本控件2.2.1窗體對象
程序演示
標簽(Label)是用于顯示文本信息的控件。
1.標簽常用的屬性(1)名稱(Name)(2)Top、Left、Height、Width(3)Caption:標簽內顯示的文本信息(4)BackStyle:背景是否透明(5)AutoSize:標簽大小是否可自動調整(6)Alignment:標簽內文本的對齊方式(7)WordWrap:是否可折行顯示文本(8)BorderStyle:邊框樣式2.2窗體及基本控件2.2.2標簽對象
2.2窗體及基本控件2.2.3文本框對象
文本框(Text)是一個文本編輯區(qū)域,可在該區(qū)域輸入、編輯和顯示文本內容。
1.文本框常用的屬性(1)名稱(Name)(2)Text:文本框中顯示或接收的內容(3)Maxlength:允許的最大長度(4)MultiLine:是否允許多行顯示(5)ScrollBars:是否加滾動條(6)Locked:Text中的內容是否可編輯(7)PassWordChar:設置輸入掩碼
(8)SelText:被選擇的文本內容(9)SelStart:被選擇的文本的起始位置(10)SelLength:被選擇的文本長度(11)其它屬性:
Height、Width、Top、Left、Enabled、
Visible、Font、ForeColor、BackColor、
FontName、FontSize、FontBold、FontItalic、
FontStrikeThru、Alignment等。
2.2窗體及基本控件2.2.3文本框對象
2.文本框常用的方法——SetFocus
SetFocus方法格式如下:[<對象名>.]SetFocus功能:把光標(焦點)移到[<對象名>.]指定的文本框上。當在窗體上建立了多個文本框后,可以用該方法把光標置于所需要的文本框中。2.2窗體及基本控件2.2.3文本框對象
3.文本框常用的事件(1)Change:改變文本框的Text屬性時觸發(fā)的事件。(2)KeyPress:單擊鍵盤某一鍵并釋放該按鍵時觸發(fā)
的事件,并返回一個KeyAscii參數(shù)。(3)KeyDown:控件獲得焦點,或按下鍵盤某一鍵時
觸發(fā)的事件。(4)KeyUp:控件失去焦點,或釋放鍵盤上一個鍵時
觸發(fā)的事件。(5)LostFocus:控件失去焦點時觸發(fā)的事件。(6)GotFocus:控件獲得焦點時觸發(fā)的事件。2.2窗體及基本控件2.2.3文本框對象
例2-5
設計一個如下圖所示的輸入密碼窗體。演示程序2.2窗體及基本控件2.2.3文本框對象
2.2窗體及基本控件
例2-6設計一個“個人信息登記表”窗體,程序運行結果如下圖所示。
2.2.3文本框對象
演示程序2.2窗體及基本控件2.2.4命令按鈕對象
命令按鈕(CommandButton)是用于控制程序的進程,即控制過程的啟動、中斷或結束。
1.命令按鈕常用的屬性(1)名稱(Name)(2)Caption:命令按鈕顯示標題(可在某字母前
加“&”設置快捷鍵)(3)Default:設置Enter鍵默認的命令按鈕(4)Cancel:設置Esc鍵默認的命令按鈕(5)Style:按鈕的顯示風格(6)Picture:設置按鈕的圖形標題(7)ToolTipText:設置工具欄提示(8)其它屬性
Height、Width、Top、Left、Enabled、Visible、Font組屬性、BackColor等。
2.命令按鈕常用的事件
Click:單擊鼠標時觸發(fā);也可以使用Tab鍵,將焦點跳轉到指定的命令按鈕上,再按回車鍵觸發(fā);還可以通過快捷鍵(Alt+下劃線的字母)觸發(fā);
MouseDown、MouseUp、MouseMove:鼠標按下、釋放、移過時觸發(fā)。2.2窗體及基本控件2.2.4命令按鈕對象
例2-7建立一個允許剪切、復制和粘貼的簡單文字處理程序。程序運行結果如圖所示。演示程序2.2窗體及基本控件2.2.4命令按鈕對象
2.2窗體及基本控件2.2.5定時器對象
定時器(Timer)又稱計時器、時鐘控件,用于按指定的時間間隔、有規(guī)律地重復執(zhí)行程序代碼。
定時器是基于系統(tǒng)內部時鐘進行計時。在設計階段時鐘控件出現(xiàn)在窗體中,在程序運行時則是不可見的。1.定時器常用的屬性
(1)名稱(Name)
(2)Interval:返回或設置引發(fā)Timer事件的時間間隔長度,單位為毫秒(ms,1ms=0.001s)
(3)Enabled:決定Timer控件是否開始使用。2.定時器按鈕常用的事件——Timer當Enabled屬性值為True,而且Interval屬性值大于0時,以Interval屬性指定的時間間隔觸發(fā)事件。
例2-8創(chuàng)建一個“電子時鐘”窗體,通過Command控件進行時間和日期的切換,程序運行結果如圖:2.2窗體及基本控件2.2.5定時器對象
例2-9設計一個流動字幕,程序運行結果如圖:2.2窗體及基本控件2.2.5定時器對象
演示程序2.3幾個常用的語句
用賦值語句可以把指定的值賦給某個變量或某個帶有屬性的對象。一般格式為:[Let]變量=表達式[Let]對象.屬性=表達式例如:Total=99'把數(shù)值常量賦給變量TotalTextl.Text=""'把文本框Textl清空Command1.Caption="結束"'命令按鈕標題為“結束”Text2.Text=Textl.Text'使Text2的Text屬性值和Textl相同2.3.1賦值語句
2.3幾個常用的語句
說明:(1)賦值語句兼有計算與賦值雙重功能,它首先計算賦值號右邊表達式的值,再把結果賦給賦值號左邊的變量。(2)在賦值語句中,“=”是賦值號,與數(shù)學上的等號意義不一樣。例如,語句n=n+1表示將變量n的值加上1后的結果再賦值給變量n,而不表示等號兩邊的值是否相等。(3)賦值號左邊只能是變量或對象屬性,不能出現(xiàn)常量或表達式。(4)變量或對象屬性的類型應與表達式的類型相容。2.3.1賦值語句
2.3幾個常用的語句
例2-10求一元二次方程2x2+3x+1=0的根。2.3.1賦值語句
演示程序
為了提高程序的可讀性,通常應在程序的適當位置加上必要的注釋。VisualBasic中的注釋語句以“Rem”或撇號“'”開頭。一般格式為:Rem注釋內容'注釋內容2.3.2注釋語句
2.3幾個常用的語句
說明:(1)注釋語句是非執(zhí)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 國家知識產(chǎn)權局專利局專利審查協(xié)作北京中心2026年度專利審查員公開招聘100人備考題庫及一套答案詳解
- jawa 布局與日歷課程設計
- 2025年中國科學院高能物理研究所軟件工程師崗位招聘備考題庫及1套完整答案詳解
- matlabe課程設計的論文
- 2440秒表課程設計
- 2025年洛陽市公安機關招聘警務輔助人員職位數(shù)核減及調劑情況考試重點試題及答案解析
- 2025恒豐銀行上海分行社會招聘29人參考考試試題及答案解析
- 2025年深圳市優(yōu)才人力資源有限公司公開招聘聘員(派遣至深圳市龍崗區(qū)工信局)的備考題庫完整參考答案詳解
- 2025年昆明市官渡區(qū)云南大學附屬中學星耀學校招聘備考題庫及一套參考答案詳解
- 2025湖北智新半導體有限公司招聘備考考試題庫及答案解析
- 2025年1月黑龍江省普通高中學業(yè)水平合格性考試物理試卷(含答案)
- 江西省三新協(xié)同體2025-2026年高一上12月思想政治試卷(含解析)
- 知識點及2025秋期末測試卷(附答案)-蘇教版(新教材)小學科學小學科學二年級上冊
- 2025安徽蕪湖市鳩江區(qū)人民醫(yī)院招聘工作人員21人筆試考試參考試題及答案解析
- 《城市軌道交通車站機電設備運用》課件 項目三:站臺門系統(tǒng)
- 企業(yè)財務盡調咨詢服務合同
- 企業(yè)稅務規(guī)劃合規(guī)審查手冊
- 2026年山西工程職業(yè)學院單招職業(yè)技能考試題庫及答案解析(名師系列)
- 附件扭轉診治中國專家共識(2024年版)解讀
- 社區(qū)工作者社工面試題及答案解析
- 2024年福建省特殊技能人才錄用公安特警隊員筆試真題
評論
0/150
提交評論