常用控件與多窗體_第1頁
常用控件與多窗體_第2頁
常用控件與多窗體_第3頁
常用控件與多窗體_第4頁
常用控件與多窗體_第5頁
已閱讀5頁,還剩66頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

藪袁常用控件與多窗體

第3章介紹了窗體的使用及最基本控件的屬性、事

件和方法。本章介紹另外的幾個常用控件以及多窗體。

主要內(nèi)容有:圖片框與圖像框、定時器、單選鈕與復(fù)

選框、框架、列表框與組合框滾動條、焦點與Tab順

序、多窗體。

退出

鼠標(biāo)左1

6.1圖片框與圖像框

6.2定時器

6.3單選鈕與復(fù)選框

6.4容器與框架

6.5列表框與組合框

6.6滾動條

6.7焦點與Tab順序

6.8多窗體

6.1圖片框與圖像框

圖片框控件(PictureBox)和圖像框控件

(ImageBox)主要用于在窗體的指定位置顯示圖形信

息。VB6.0支持.bmp、.ico>.wmf>.emf>.jpg>.gif

等格式的圖形文件。

6.1.1圖片框、圖像框的常用屬性

1.Picture屬性

圖片框和圖像框中顯示的圖片由Picture屬性決定。

圖形文件可以在設(shè)計階段裝入,也可以在運行期間裝

入。

(1)在設(shè)計階段裝入

在設(shè)計階段,可以用屬性窗口中的Picture屬性裝

入圖形文件。

(2)在運行期間裝入

在運行期間,可以用LoadPicture函數(shù)把圖形文件

裝入圖片框或圖像框中。語句格式如下:

對象名.Picture=LoadPicture([filename])

2.AutoSize屬性

該屬性用于圖片框。決定控件是否自動改變大小

以顯示圖像全部內(nèi)容。缺省值為False,此時保持控件

大小不變,超出控件區(qū)域的內(nèi)容被裁減掉;若值為

True時,自動改變控件大小以顯示圖片全部內(nèi)容(注

意:不是圖形改變大?。?/p>

3.stretch屬性

用于圖像框。當(dāng)該屬性的取值為False時,圖像控

件將自動改變大小以與圖形的大小相適應(yīng);當(dāng)其值為

True時,顯示在控件中的圖像的大小將完全適合于控

件的大小,這時,圖片可能會變形。

6.1.2圖片框、圖像框的區(qū)別

(1)圖片框控件可以作為其它控件的容器。

.(2)圖片框可以通過Print方法接收文本,而圖像

框則不能接收用Print方法輸入的信息。

(3)圖像框比圖片框占用的內(nèi)存少,顯示速度快。

6.2定時器

VB提供了一種叫定時器(Timer)的控件。定時

器每隔一定的時間間隔就產(chǎn)生一次Timer事件(可理解

為報時),用戶可以根據(jù)這個特性設(shè)置時間間隔控制

某些操作或用于計時。

1.屬性

定時器控件的屬性不是很多,最常用的是Interval

屬性,該屬性用來決定兩次調(diào)用定時器的間隔,以ms

為單位,取值范圍為0-65535,所以最大時間間隔不

能超過66s,該屬性的缺省值為0,即定時器控件不起

作用。如果希望每秒產(chǎn)生〃個事件,則應(yīng)設(shè)置屬性

Interval的值為1000/〃。

2.事件

定時器只支持Timer事件。對于一個含有定時器控

件的窗體,每經(jīng)過一段由屬性Interval指定的時間間隔,

就產(chǎn)生一個Timer事件。

【例6.2】建立數(shù)字計時器,要求每秒鐘時間變化

一次。

設(shè)計界面:

在窗體上添加一個定時器控件、一個標(biāo)簽,并按

表6-1設(shè)置屬性。

表6」屬性設(shè)式

新象屎性設(shè)置

Tingrlhueival1000

親母

L^bell

疝@

BZWorV^ireVr^SZVt"y^JWeV1-Fixed

HE

程序代碼如下:

PrivateSubTimerl_Timer()

Labell.FontSize=48

Labell.Caption=Time,將Time函數(shù)返回的系統(tǒng)時

間顯示在標(biāo)簽中

EndSub

執(zhí)行結(jié)果如下圖6-3所示,每隔1s鐘顯示一次時間。

6殿

0七

/

匚9子

S

匚E

6.3單選鈕與復(fù)選框

有時希望在應(yīng)用程序的界面上提供一些項目,讓

用戶從幾個選項中選擇其中之一,這就要用“單選鈕”

控件。如果有多個選擇框,每個選擇框都是獨立的、

互不影響的,用戶可以任意選擇它們的狀態(tài)組合,則

可以用“復(fù)選框”控件。

6.3.1單選鈕

單選鈕(OptionButton)通常成組出現(xiàn),主要用

于處理“多選一”的問題。用戶在一組單選鈕中必須

選擇一項,并且最多只能選擇一項。當(dāng)某一項被選定

后,其左邊的圓圈中出現(xiàn)一個黑點。例如,圖6-4所示

就是一組單選鈕,用戶只能在這3個單選鈕選項中選擇

0

1.屬性

(1)Value屬性

該屬性表示單選按鈕選中或不被選中的狀態(tài)。

True為選中;False為不被選中。

(2)Caption屬性

該屬性顯示出現(xiàn)在單選鈕旁邊的文本。

(3)Style屬性

該屬性用來設(shè)置控件的外觀。值為0時,控件顯示

如圖6-4所示標(biāo)準(zhǔn)樣式;值為1時,控件外觀類似命令

按鈕。

一般說來,單選鈕總是作為一個組(單選鈕組)

發(fā)揮作用的。圖Q4關(guān)于顏色的單選鈕就是一個按鈕組。

2.事件

單選鈕常用事件是Click事件。

【例6.4】程序運行后,單擊某個單選鈕,在標(biāo)簽

中顯示相應(yīng)的字體。運行結(jié)果如圖6-5所示。

分析:需要在窗體上建立一個標(biāo)簽和3個單選鈕[

其主要屬性設(shè)置如表6-2所示。

表6-2對象屬性設(shè)置

新象屎性設(shè)置

Cqztion顯示不同字體

LabellN^meL&bell

Font麥體

紋及對像屎性設(shè)置

Cation定住

Option1NameSang

Font束體

Csptiom束書

Option2NameLi

Font京書

Caption格佑

Optiom3NameKai

Font楷體_GB2312

■R1C3

?安恒

rn

困6-5例6.4運行結(jié)果

事件過程代碼如下:

PrivateSubkai_Click()

Labell.FontName=”皆體_gb2312"

EndSub

PrivateSubli_Click()

Labell.FontName=”隸書”

EndSub

PrivateSubsong_Click()

Labell.FontName="宋體”

EndSub

6.3.2復(fù)選框

復(fù)選框(CheckBox)也稱檢查框,單擊復(fù)選框一

次時被選中,左邊出現(xiàn)號,再次單擊則取消選中,

清除復(fù)選框中的??赏瑫r使多個復(fù)選框處于選中

狀態(tài),這一點和單選按鈕不同。如圖6-6所示,有四個

復(fù)選框。

0冏百列打

三月旬”

LhttiS

國6-6復(fù)建框

1.屬性

(1)Value屬性

決定復(fù)選框的狀態(tài):0—未選中,1一已選中,2—變灰暗。

(2)Picture屬性

用來指定當(dāng)復(fù)選框被設(shè)計成圖形按鈕時的圖像。

?2.事件、

復(fù)選框常用事件為Click事件。

【例6.5]用復(fù)選框控制文本是否加下劃線和斜體

顯示。在程序執(zhí)行期間,如果選定“加下劃線”復(fù)選

框,則文本框中的內(nèi)容就加上了下劃線,如果清除

“加下劃線”復(fù)選框,則文本框中的內(nèi)容就沒有下劃

線;如果選定“斜體”復(fù)選框,則文本框中的文字字

形就變成斜體,如果清除“斜體”復(fù)選框,則文本框

中的文字字形就不是斜體。運行界面如圖6-7所示。

fml

旦選框舉例

p加下劃線

下鋁體

圖6了復(fù)選框舉例運行處累界面

設(shè)計界面:

在窗體上建立一個文本框,兩個復(fù)選框。3個控件

的屬性如表6-3所不。

編寫如下事件過程:

PrivateSubCheckl_Click()

IfCheckl.Value=1Then

Text1.FontUnderline=True

Else

Text1.FontUnderline=False

EndIf

EndSub

PrivateSubCheck2_Click()

IfCheck2.Value=1Then

Textl.Fontltalic=True

Else

Textl.Fontltalic=False

EndIf

EndSub

PrivateSubFormLoad()

Textl.FontSize=20

EndSub

6.4容器與框架

所謂容器,就是可以在其上放置其它控件對象的

一種對象。窗體、圖片框和框架都是容器。容器內(nèi)所

有控件成為一個組合,隨容器一起移動、顯示、消失

和屏蔽。

在前一節(jié)例6.3中,是在一個窗體上建立一組單選

按鈕,若要在同一窗體上建立幾組相互獨立的單選按

鈕,通常用框架控件(Frame)將每一組單選鈕框起

來,這樣在一個框架內(nèi)的單選鈕成為一組,對一組單

選鈕的操作不會影響其它組的單選鈕。

在窗體上創(chuàng)建框架及其內(nèi)部控件時,應(yīng)先添加框

架控件,然后單擊工具箱上的控件,用指針在框

架中以拖拽的方式添加控件,框架內(nèi)的控件不能被拖

出框架外。不能用雙擊的方式向框架中添加控件,也

不能先畫出控件再添加框架。如果要用框架將窗體上

現(xiàn)有的控件進行分組,可先選定控件,將它們剪切后

粘貼到框架中。

1.屬性

(1)Caption屬性

框架的標(biāo)題,位于框架的左上角,用于注明框架

的用途。A

(2)Enabled屬性

決定框架中的對象是否可用,通常把Enabled屬性

設(shè)置為True,以使框架內(nèi)的控件成為可以操作的。

2.事件

Click和DblClick。在大多數(shù)情況下,我們用框架

控件對控件進行分組,沒有必要響應(yīng)它的事件。

【例6.6】使用兩個單選鈕組來改變文本框中文字

的顏色和大小。運行結(jié)果如圖6-8所示。

設(shè)計界面:

在窗體上添加一個標(biāo)簽控件,一個命令按鈕;添

加一個框架控件,在框架控件上畫上3個單選鈕控件

(顏色按鈕組);再添加一個框架控件,在框架控件

上畫上兩個單選鈕控件(字體大小按鈕組)。兩個框

架的Caption屬性分別設(shè)置為“顏色”和“字體大

小”,其它控件屬性的設(shè)置可以按照圖6-8所示自己進

行。

圖&8例6.6運行結(jié)果

三」

編寫代碼如下:

PrivateSubCommandl_Click()

end

EndSub

PrivateSubOptionl_Click()

,藍色單選鈕

Labell.ForeColor=&HFF0000

EndSub

PrivateSubOption2_Click()

,紅色單選鈕

Labell.ForeColor=&HFF&

EndSub

PrivateSubOption3_Click()

,綠色單選鈕

Labell.ForeColor=&HFF00&

EndSub

PrivateSubOption4_Click()

,文字大小10單選鈕

Labell.FontSize=10

EndSub

PrivateSubOption5_Click()

,文字大小20單選鈕

Labell.FontSize=20

EndSub

6.5列表框與組合框

列表框(ListBox)控件將一系列的選項組合成五

個列表,用戶可以選擇其中的一個或幾個選項,但不

能向列表清單中輸入項目;組合框(ComboBox)控

件是綜合文本框和列表框特性而形成的一種控件,用

戶可通過在組合框中輸入文本來選定項目,也可從列

表中選定項目。

6.5.1列表框

列表框控件(ListBox)的主要用途在于提供列表

式的多個數(shù)據(jù)項供用戶選擇。在列表框中放入若干個

項的名字,用戶可以通過單擊某一項或多項來選擇自

己所需要的項目。如果放入的項較多,超過了列表框

設(shè)計時可顯示的項目數(shù),則系統(tǒng)會自動在列表框邊上

加一個垂直滾動條。

1.屬性

(1)List屬性

該屬性是一個字符串?dāng)?shù)組,用來保存列表框中的

各個數(shù)據(jù)項內(nèi)容。List數(shù)組的下標(biāo)從0開始,即List(0)

保存表中的第一個數(shù)據(jù)項的內(nèi)容。List(1)保存第.

個數(shù)據(jù)項的內(nèi)容,依次類推,List(ListCount-1)保

存表中的最后一個數(shù)據(jù)項的內(nèi)容。'

在窗體上添加一個列表框,其外觀如圖6-9所示,.

圖上所顯示的“Listl”是控件的名稱,而不是列表項

中的數(shù)據(jù)項。

Liill

添加到齒體上的列茯框外觀

(2)ListCount屬性

該屬性記錄了列表框中的數(shù)據(jù)項數(shù),該屬性只能

在程序中引用它。.

(3)Text屬性

用于存放被選中列表項的文本內(nèi)容。該屬性是只

讀的,不能在屬性窗口中設(shè)置,也不能在程序中設(shè)置,

只用于獲取當(dāng)前選定的列表項的內(nèi)容??稍诔绦蛑幸?/p>

用Text屬性值。

(4)Listlndex屬性

該屬性是List數(shù)組中,被選中的列表項的下標(biāo)值

(即索引號)。如果用戶選擇了多個列表項,則

Listindex是最近所選列表項的索引號;如果用戶沒有

從列表框中選擇任何一項,則Listindex為一1。程序運

行時,可以使用Listlndex屬性判斷列表框中哪一項被

選中。

例如,在列表框Listl中選中第2項,即ListLList數(shù)

組的第2項,則Listlndex=1(Listindex從0開始)。

Listlndex屬性不能在設(shè)計時設(shè)置,只有程序運行

時才起作用。

(5)Selected屬性

該屬性是一個邏輯數(shù)組,其元素對應(yīng)列表框中相

應(yīng)的項。表示相應(yīng)的項在程序運行期間是否被選中。

例如,Selected(0)的值為True,表示第一項被選中,

如為False,表示未被選中。

(6)MultiSelect(多選擇列表項)屬性

該屬性值表明是否能夠在列表框控件中進行復(fù)選

以及如何進行復(fù)選。它決定用戶是否可以在控件中做

多重選擇,它必須在設(shè)計時設(shè)置,運行時只能讀取該

屬性。Multiselect屬性值的說明如表6-4所示。

表6-4設(shè)置屬性

說明

o(缺省值)不允許況強

1?同里定透可同時選揉多個頂,用鼠.標(biāo)漁擊或按下SPACEI空格鍵)在列我中途中或取消建中項

teTSh比弁阻擊鼠標(biāo)或按FSK以及一個方向逮(上帶頭,F(xiàn)前頭,左帶頭,和右

2?獷雁院遂.箭頭)將包以強運連蟆的多個強項;按下Ctrl并敲擊鼠標(biāo)而在列戲中造中或取消強中

不連續(xù)的多小強項

(7)SelCount屬性

其值表示在列表框控件中所選列表項的數(shù)目,只

有在MultiSelect屬性值設(shè)置為1(Simple)或2

(Extended)時起作用,通常與Selected數(shù)組一起使用,

以處理控件中的所選項目。

請單擊鼠標(biāo)左鍵換頁7<僉

2.方法

ListBox對應(yīng)的控件方法有:Additem,Clear和

Removeitem

(1)Additem方法

該方法向一個列表框中加入列表項,其語法是:.

Listname.Addltemitem[,index]

(2)Removeitem方法

該方法用于刪除列表框中的列表項,其語法是:

Listname.Removeltemindex

(3)Clear方法

該方法刪除列表框控件中的所有列表項。其語法

是:

Listname.Clear

【例6.7】利用列表框和命令按鈕編程,要求程序

能夠?qū)崿F(xiàn)添加項目、刪除項目、刪除全部項目的功能。

設(shè)計界面:、

在窗體上添加一個列表框(ListBox)控件,3個

命令按鈕。屬性設(shè)置如表6-5所示。

表6-5屬性設(shè)置

利第屎性設(shè)置

ConximndlCation夠加項目

Conimand2Cation姍酸項目,J

全部刪除1

LanomridZCaption

1Listl璇映牌螃2:

FomulCation列強框的慣作

HE

在程序中添加如下代碼:

PrivateSubCommandl_Click()

Dimentry

entry=InputBox("輸入添加內(nèi)容",“添加")

List1.Additementry,添加項目

EndSub

PrivateSubCommand2_Click()

DimiAsInteger

Fori=Listl.ListCount-1To0Step-1

IfListl.Selected(i)ThenList1.Removeitemi

,刪除選中項目

Nexti

EndSub

PrivateSubCommand3_Click()

Listl.Clear,全部刪除

EndSub

運行結(jié)果如圖6-12所示。

國642例6/7過行緘累

6.5.2組合框

組合框(ComoBox)是一種兼有列表框和文本框

的功能的控件。它可以像列表框一樣,讓用戶通過鼠

標(biāo)選擇所需要的項目;也可以像文本框一樣,用鍵入

的方式選擇項目。

1.屬性

(1)Style屬性

這是組合框的一個重要屬性,其取值為0,b2,.

它決定了組合框3種不同的類型,分別為下拉式組合框、

簡單組合框和下拉式列表框。如圖6-13所示。

?e告曲觸,》氣Hpin

FRW曼合依欣??合fl

圖6-13組合框哭型

(2)Text屬性

該屬性值是用戶所選擇的項目的文本或直接從編

輯區(qū)輸入的文本。

2.事件

組合框所響應(yīng)的事件依賴于其Style屬性。.

【例6.8】設(shè)計一個簡單的報名窗口,要求界面如

圖6-14所示,從文本框中輸入學(xué)生姓名,在“班級”

旁邊的組合框中選擇其所屬班級(提供4種默認(rèn)班級:

電氣991、微機991、網(wǎng)絡(luò)991、電子991,用戶可以輸

入其它的班級名)。然后將學(xué)生姓名和班級添加到列

表框中。用戶可以刪除列表框中所選擇的項目,也可

以把整個列表框清空。

@

M8

9

.

lr9

l圖

gj

設(shè)計界面如下:

在窗體上加入3個標(biāo)簽,一個文本框,一個組合框,

一個列表框,以及3個命令按鈕。各控件屬性設(shè)置如表

6-6所示。

表6-6設(shè)置屬性

對象屎性:設(shè)置

L^bdlCaption姓名

LSe!2Caption班缸:I

313Cation則袤

TextlCaption:空

Combo1Style0

?:^^;

Liftl

MqhiS.jkct2

C(xandlCation加入.j

Caption.JM除強項

C(imd3Cation落空列業(yè)

FannLICaption祖名

程序如下:

PrivateSubCommandl_Click()

If((Textl.Text<>)And(Combol.Text<>

S)Then

List1.AdditemTextl.Text++Combol.Text

Else

MsgBox(”請輸入添加內(nèi)容!D

EndIf

EndSub

年左鍵換頁!〈合

PrivateSubCommand2_Click()

DimiAsInteger

IfList1.Listindex>=0Then

Fori=List1.ListCount-1To0Step-1

IfList1.Selected(i)ThenListl.Removeitemi

,刪除被選中的項目

Nexti

EndIf

EndSub

PrivateSubCommand3_Click()

Listl.Clear1清空列表

EndSub

PrivateSubForm_Load()

Combol.Addltem''電氣991”

Combol.Addltem''微機991”

Combol.Addltem”網(wǎng)絡(luò)991”

Combol.Addltem”電子991”

Combol.Text=Combol.List(0)

EndSub

程序運行界面如圖6-15所示。

8

H

.

爸9

,二

.

9

Ik

6.6條

滾動條通常用來附在窗體邊上幫助觀察數(shù)據(jù)或確

定位置,作為速度、數(shù)量的指示器來使用,也可用來

作為數(shù)據(jù)輸入的工具。

滾動條分為水平滾動條(HscrollBar)和垂直滾動

條(VscrollBar),如圖6-16所示。除方向不一樣外,

水平滾動條和垂直滾動條的結(jié)構(gòu)與操作是完全相同的。

話動雷頭

法動塊

滾動瞥頭

圖646垂官:浪動條和水平/動條

HE

滾動條的兩端各有一個滾動箭頭,在滾動箭頭之

間有一個滾動塊。滾動塊從一端移至另一端時,其值

在不斷變化。垂直滾動條的值由上往下遞增,水平滾

動條的值由左往右遞增。其值均以整數(shù)表示,取值

溫馨提示

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

最新文檔

評論

0/150

提交評論