習(xí)題二
1.對(duì)象指現(xiàn)實(shí)世界中的實(shí)體。每個(gè)對(duì)象有自己的特征(屬性)、行為(方法)和發(fā)生在該對(duì)象上的活動(dòng)(事件)。
類是對(duì)同一種對(duì)象的集合與抽象。類包含所創(chuàng)建對(duì)象的屬性數(shù)據(jù),以及對(duì)這些數(shù)據(jù)進(jìn)行操作的方法。封裝和隱藏是類的重要特性,將數(shù)據(jù)結(jié)構(gòu)和對(duì)數(shù)據(jù)的操作封裝在一起,類的內(nèi)部實(shí)現(xiàn)細(xì)節(jié)對(duì)用戶來說是透明的。
VB工具箱中的可視圖標(biāo)是VB系統(tǒng)設(shè)計(jì)好的標(biāo)準(zhǔn)控件類。通過將控件類實(shí)例化,得到真正的控件對(duì)象。在窗體上畫一個(gè)控件,就將類轉(zhuǎn)換為對(duì)象,創(chuàng)建了一個(gè)控件對(duì)象。
VB中常用的對(duì)象是控件。此外,VB還提供了系統(tǒng)對(duì)象。窗體是個(gè)特例,它既是類也是對(duì)象。當(dāng)向一個(gè)工程添加一個(gè)新窗體時(shí),實(shí)質(zhì)就由窗體類創(chuàng)建了一個(gè)窗體對(duì)象。
對(duì)象的三要素:屬性、事件和方法。
屬性:存放對(duì)象的數(shù)據(jù)(決定對(duì)象外觀及功能)對(duì)象屬性的設(shè)置方法:在設(shè)計(jì)階段,利用屬性窗口直接設(shè)置屬性值;程序運(yùn)行時(shí),通過語(yǔ)句[對(duì)象名.]屬性名=屬性值。若屬性只能在設(shè)計(jì)階段設(shè)置,在程序運(yùn)行階段不可改變,稱為只讀屬性。
事件:發(fā)生在對(duì)象上的事情。同一事件,對(duì)不同的對(duì)象,會(huì)引發(fā)不同的反應(yīng)。
事件過程:應(yīng)用程序處理事件的步驟。應(yīng)用程序設(shè)計(jì)的主要工作就是為對(duì)象編寫事件過程的代碼。
方法:面向?qū)ο蟮某绦蛟O(shè)計(jì)語(yǔ)言,為程序設(shè)計(jì)人員提供了一種特殊的過程和函數(shù)。方法是面向?qū)ο蟮?,調(diào)用時(shí)一定要指明對(duì)象。
2.窗體和控件具有的基本屬性“
(1) Name屬性:名稱
所創(chuàng)建的對(duì)象名稱,在程序中引用。
(2) Caption屬性:標(biāo)題
該屬性決定了對(duì)象上顯示的內(nèi)容。
(3) Height、Width、Top和Left屬性
決定對(duì)象的大小和位置。
(4) Enabled 屬性:對(duì)象是否允許操作
(5) Visible 屬性:對(duì)象是否可見
(6) Font 屬性組:文本的外觀
FontName字體、FontSize大小
FontBold粗體、FontItalic斜體
FontStrikethru 刪除線
FontUnderline 下劃線
(7) ForeColor屬性:前景顏色
(8) BackColor屬性:背景顏色
(9) MousePointer屬性:鼠標(biāo)指針類型, 設(shè)置值范圍0~15,由系統(tǒng)指定 。若為99,由用戶提供的圖形文件定義鼠標(biāo)指針形狀。
(10) MouseIcon屬性:在MousePointer屬性值為99時(shí),存放自定義的鼠標(biāo)圖標(biāo)文件(.ico或.cur)。圖標(biāo)庫(kù)在Graphics目錄下。
3.窗體的事件:Load事件是在窗體被裝入工作區(qū)時(shí)觸發(fā)的事件。當(dāng)應(yīng)用程序啟動(dòng),自動(dòng)執(zhí)行該事件,該事件通常用來在啟動(dòng)應(yīng)用程序時(shí)對(duì)屬性和變量進(jìn)行初始化。
窗體的方法:(1)Print方法
用來顯示文本內(nèi)容,格式:[對(duì)象.]print 表達(dá)式
(2)Cls方法
清除運(yùn)行時(shí)在窗體或圖形框中產(chǎn)生的文本或圖形, Cls方法不能清除窗體在設(shè)計(jì)時(shí)的文本和圖形。
格式:[對(duì)象.]cls
(3)Move方法
可移動(dòng)窗體或控件,并可改變其大小。
語(yǔ)法格式如下:
[對(duì)象.]Move 左邊距離[,上邊距離[,寬度[,高度]]]
4.標(biāo)簽作用:用于顯示文本(輸出)信息,不能作為輸入信息的界面。其內(nèi)容只能通過Caption屬性設(shè)置或修改,不能直接編輯。
5.文本框是一個(gè)文本編輯區(qū)域,可以在該區(qū)域輸入、編輯、修改和顯示正文內(nèi)容。在VB中字符長(zhǎng)度以字為單位,也就是一個(gè)西文字符與一個(gè)漢字都是一個(gè)字,長(zhǎng)度為1。
重要屬性(1) Text 顯示或輸入的正文內(nèi)容。
(2) Maxlength 設(shè)置文本框可輸入的文字最大長(zhǎng)度。默認(rèn)值為0,表示可以輸入任意長(zhǎng)字符串。
(3) MultiLine 多行屬性
設(shè)置為True時(shí),文本框可以輸入或顯示多行正文,同時(shí)具有文字處理器的自動(dòng)換行功能,按Enter鍵可插入一空行。
(4) ScrollBars 滾動(dòng)條屬性
0-None 無滾動(dòng)條
1-Horizontal 水平滾動(dòng)條
2-Vertical 垂直滾動(dòng)條
3-Both 同時(shí)加水平和垂直滾動(dòng)條
注意:當(dāng)MultiLine為True時(shí),ScrollBars才有效
(5) PassWordChar 設(shè)置顯示文本的替代符。例如,當(dāng)設(shè)置為“*”,則在文本框輸入的內(nèi)容均以“*”顯示,而存儲(chǔ)的值是用戶輸入的原文。一般用于設(shè)置口令的輸入。
當(dāng)MultiLine為True時(shí),該屬性不起作用,密碼不允許多行。
(6) Locked 指定文本控件是否可被編輯,默認(rèn)值為False(可編輯),當(dāng)設(shè)置為True時(shí),文本控件相當(dāng)于標(biāo)簽控件的作用。
注意:Locked與Enabled的區(qū)別。
(7)文本內(nèi)容進(jìn)行選擇操作的三個(gè)屬性
SelStart 選定的正文開始位置
SelLength 選定的正文長(zhǎng)度
SelText選定的正文內(nèi)容
這3個(gè)屬性互相關(guān)聯(lián),例如設(shè)置SelStart、SelLength后,SelText 自動(dòng)存放指定的文本。
注意:屬性窗口中沒有這三個(gè)屬性,只能在程序代碼中使用。
6.文本框的事件:(1) Change事件:當(dāng)Text屬性值發(fā)生改變時(shí)引發(fā)該事件
(2) KeyPress事件:按下并且釋放鍵盤上的一個(gè)鍵時(shí),引發(fā)焦點(diǎn)所在控件的KeyPress事件,所按鍵的值存放在參數(shù)KeyAscii中。對(duì)回車的判斷 KeyAscii=13
7.文本框最有用的方法是SetFocus,把光標(biāo)移到指定的文本框中。
8.命令按鈕 Picture屬性:按鈕可顯示圖片文件(.bmp和.Ico),當(dāng)Style為1時(shí)有效。
10. 啟動(dòng)窗體時(shí)將命令按鈕定位在窗體中央的代碼
Private Sub Form_Load()
Command1.Left = Form1.ScaleWidth / 2 - Command1.Width / 2
Command1.Top = Form1.ScaleHeight / 2 - Command1.Height / 2
End Sub
11.vb圖片文件在 C:\Program Files\Microsoft Visual Studio\Common\Graphics 文件夾。
安裝VB時(shí)可選擇是否安裝這些圖片文件。