鸭子tv国产极品在线观看_成人69视频在线播放_91精品免费在线观看_亚洲AT永久偷窥无码精品_国产精品自产拍在线观看涩浪潮久

江蘇省高校計算機等級考試命題研究院 江蘇省高校計算機等級考試輔導
第二章 VB的界面設計(復習要點1)

第二章         VB的界面設計

2.1  VB用戶界面設計基礎

1. 概述

   界面的設計有兩步:先繪制控件,然后確定控件屬性。
 
 
繪制控件:在工具箱里單擊想畫的控件,在窗體里按下鼠標并拖曳,然后松開鼠標即可。確定屬性:先選中控件,然后按F4鍵或單擊工具欄上的屬性窗口進入屬性(Properties)窗口,再在屬性窗口中找到要設置的屬性并進行設置。

2. 常用屬性的設置

1Name屬性

   對象都有名字,計算機把名字看成對象于對象之間的根本差異,因此在同一窗體里不許出現(xiàn)重名的情況(除非這是一個控件數(shù)組),且名字不得超過40個字。

   在簡單的程序里,給控件命名不是很必要,完全可以使用控件Name屬性的缺省值。例如Text1。但在有幾十個控件的復雜窗體里,就很難區(qū)分它們。所以,VB推薦由三個小寫字母的前綴和一個第一個字母為大寫的描述性單詞組成的名字。例如cmdMyButton是一個命令按鈕(前綴是cmd

推薦的前綴

對象

前綴

例子

確認框(Check Box

chk

chkCareerChioce 

組合框(Combo Box

cbo

cboCrimesCommitted 

命令鈕(Command Button

cmd

cmdExit 

數(shù)據(jù)庫控件(Data Control

dat

datTopSecretInfo 

目錄列表框(Directory List Box

dir

dirTree 

驅(qū)動器列表框(Drive List Box

drv

drvHardDisk 

文件列表框(File List Box

fil

filDocuments 

窗體(Form

frm

frm1040Tax 

框架(Frame

fra

fraGroupButtons 

水平滾動條(Horizontal Scroll Bar

hsb

hsbTemperature 

圖形(Image

img

imgPrettyDrawing 

標簽(Label

lbl

lblFakeName 

線(Line

lin

linBorder 

列表框(List Box

lst

lstCandidates 

菜單(Menu

mnu

mnuHamAndEggs 

選項鈕(Option Button

opt

optStation101 

圖形框(Picture Box

pic

picPrettyPicture 

幾何圖形(Shape

shp

shpUpOrShipOut 

文本框(Text Box

txt

txtWarning 

垂直滾動條(Vertical Scroll Bar

vsb

vsbMoneyRaised

 2Caption屬性

     Caption即標題,是可以在對象外觀上直接看見的文本,可以長達255字符,包括空格和標點符號,比如一個叫cmdOk的命令鈕,它的Caption屬性就可以是“Ok”。 注意:并不是所有的對象都有此屬性,比如文本框、圖片框、線條等就沒有。

    為按鈕設置熱鍵:在設置Caption屬性時,在需要加下劃線的字母前加上 “&” 符號,例如 “&File”,輸出的就是“File”,這樣就可以通過按ALT鍵和標題上那個帶下劃線的字母來選取它了, 不必為此編任何代碼。

Name caption的比較

  1) Name是系統(tǒng)用來識別對象的,編程時需要用它來指代各對象;Caption是給用戶看的,提示用戶該對象的作用;
 
  2)
Name可以采用系統(tǒng)默認的名稱,但Caption應該根據(jù)實際情況改成意義明了的名詞;

  3
)所有對象都有Name,但不一定都有Caption;

3Top,Left屬性

    這兩個屬性決定對象的位置。只有兩種情況需要在屬性窗口里設置這兩個屬性:第一種是用戶沒有鼠標,第二種是程序員需要十分精確地設定這兩個值。當選中對象,單擊并拖曳它的時候,便在修改這兩個值了。

4Height,Width屬性

    這兩個屬性決定了對象的大小,當選中控件時,它周圍出現(xiàn)八個小黑方塊,把鼠標指向這些方塊,鼠標指針將變成一個雙向的箭頭,這時按下鼠標并拖曳它,即可改變控件的大小,也就改變了Height,Width屬性。

2.2  創(chuàng)建窗體

1.    窗體的屬性

(1)          常用屬性簡介

屬性 名稱 說明
Name 窗體名稱 系統(tǒng)識別窗體的標識名,一個窗體名必須以一個字母開頭,可包含數(shù)字和下劃線,但不能包含空格和標點符號。
Caption 窗體標題 出現(xiàn)在窗體標題欄中的文本內(nèi)容
Icon 窗體圖標 這個屬性是用戶經(jīng)常要使用的一種屬性。當用戶的應用程序在工具條上最小化或在Windows桌面上變?yōu)橐粋獨立應用程序時,該屬性決定將采用何種圖標,窗體控制框里的圖標也由它決定。
BackColor 窗體背景色 可以從屬性框里彈出調(diào)色板,選擇所需要的顏色
ForeColor 窗體前景色 窗體上打印文字的顏色
BorderStyle 邊框風格 這個屬性決定了窗體邊框的樣式,共有6種屬性值。改變窗體的BordrStyle屬性后,窗體在屏幕上沒有變化,它只在運行時才變?yōu)樗蟮臉幼印?/TD>
Apearance 外形 這個屬性用來決定控件是否采用三維效果
ControlBox 控件按鈕控件按鈕 用來決定是否采用 控件框的屬性,僅在程序運行時才有效。
Font 字體 用來改變該窗體上顯示信息的字體、字型和字號,它控制著直接在窗體上打印的文本顯示。
Visible 可見性 該屬性決定窗體是否可見, 默認情況下是可見的。錯誤地改變其值是很危險的,窗體會從眼前消失,
WindowState 窗體狀態(tài) 指定窗體在運行時的三種狀態(tài):正常、最小化、最大化。
Enabled 活動性 默認值為True,決定窗體能否被訪問。
Left、Top、Height、Width 左邊距、頂邊距、高度、寬度 決定窗體在屏幕上的位置及窗體大小。

(2)設置屬性的方法

 1)在設計態(tài)通過屬性窗口設置
 
    
直接在屬性窗口中選擇或輸入既可。
 
 
2)在程序代碼中改變屬性值
 
   
代碼中的格式為:  對象名 . 屬性 = 屬性值
 
   
例:Form1.BackColor=RGB255,00

2.    窗體的常用方法

(1)Hide方法

    用以隱藏 MDIForm Form 對象,但不能使其卸載。
 
 
語法object.Hide
 
      object
所在處代表一個對象表達式,其值為“應用于”列表中的一個對象。如果省略 object,則帶有焦點的窗體就認為是該 object

  說明

   ¨         隱藏窗體時,它就從屏幕上被刪除,并將其 Visible 屬性設置為 False 用戶將無法訪問隱藏窗體上的控件,但是對于運行中的 Visual Basic 應用程序,或?qū)τ谕ㄟ^ DDE 與該應用程序通訊的進程及對于 Timer 控件的事件,隱藏窗體的控件仍然是可用的。
 
   ¨        
窗體被隱藏時,用戶只有等到被隱藏窗體的事件過程的全部代碼執(zhí)行完后才能夠與該應用程序交互。
 
   
¨         如果調(diào)用 Hide 方法時窗體還沒有加載,那么 Hide 方法將加載該窗體但不顯示它。

(2)Move方法

     用以移動 MDIForm、Form 或控件。
 
  
語法object . Move  left, top, width, height
  

    Move 方法的語法包含下列部分:

部分

描述

object

可選的。一個對象表達式,其值為“應用于”列表中的一個對象。如果省略 object,帶有焦點的窗體缺省為 object。

left

必需的。單精度值,指示 object 左邊的水平坐標 (x-)。

top

可選的。單精度值,指示 object 頂邊的垂直坐標 (y-)。 

Width

可選的。單精度值,指示 object 新的寬度。

height

可選的。單精度值,指示 object 新的高度。

  說明:只有 left 參數(shù)是必須的。但是,要指定任何其它的參數(shù),必須先指定出現(xiàn)在語法中該參數(shù)前面的全部參數(shù)。例如,如果不先指定 left top 參數(shù),則無法指定 width 參數(shù)。任何沒有指定的尾部的參數(shù)則保持不變。

(3)Print 方法

    Immediate 窗口中顯示文本。
 
 
語法:object . Print [outputlist]
 
     
Print 方法的語法具有下列對象限定符和部分:

部分

描述

object

必需的。對象表達式,其值為“應用于”列表中的對象。

outputlist

可選的。要打印的表達式或表達式的列表。如果省略,則打印一空白行。

    outputlist 參數(shù)具有以下語法和部分:

    {Spc(n) | Tab(n)} expression charpos

部分

描述

Spc(n)

可選的。用來在輸出中插入空白字符,這里,n 為要插入的空白字符數(shù)。

Tab(n)

可選的。用來將插入點定位在絕對列號上,這里,n 為列號。使用無參數(shù)的 Tab(n) 將插入點定位在下一個打印區(qū)的起始位置。

expression

可選。要打印的數(shù)值表達式或字符串表達式。

Charpos

可選。指定下個字符的插入點。使用分號 (;) 直接將插入點定位在上一個被顯示的字符之后。使用 Tab(n) 將插入點定位在絕對列號上。使用無參數(shù)的 Tab 將插入點定位在下一個打印區(qū)的起始位置。如果省略 charpos,則在下一行打印下一字符。

  說明

    ¨  可以用空白或分號來分隔多個表達式。
 
     
¨  對系統(tǒng)指定的國別設置,用小數(shù)點分隔符將所有打印到 Immediate 視窗的數(shù)據(jù)正確格式化。關(guān)鍵字要用適用于主應用程序的語言輸出。
   ¨對于 Boolean 數(shù)據(jù),或者打印 True 或者打印 False。根據(jù)主機應用程序的地區(qū)設置來翻譯 True False 關(guān)鍵字。  
    ¨
使用系統(tǒng)能識別的標準短日期格式書寫 Date 數(shù)據(jù)。當日期或時間部件丟失或為零時,只書寫已提供的部件。
 
    
¨ 如果 outputlist 數(shù)據(jù)是 Empty,則無內(nèi)容可寫。但是,如果 outputlist 數(shù)據(jù)是 Null,則輸出 Null。在輸出 Null 關(guān)鍵字時,要把關(guān)鍵字正確翻譯出來。
 
    
¨ 要把錯誤數(shù)據(jù)作為 Error errorcode 輸出。在輸出 Error 關(guān)鍵字時,要把關(guān)鍵字正確翻譯出來。
 
    
¨如果在具有缺省顯示空間的模塊外使用此方法,則需要 object。例如,如果沒有指定對象就在標準模塊上調(diào)用此方法,則將導致錯誤發(fā)生,但是,如果在窗體模塊上進行調(diào)用,則會在窗體上顯示“outputlist”。

  注意 因為 Print 方法是按照字符比例進行打印,所以字符數(shù)與字符所占據(jù)的寬度固定的列的數(shù)目無關(guān)。例如,像 “W” 這樣的寬字母占據(jù)的寬度超過一固定列寬,而像 "i" 這樣的窄字母占據(jù)的寬度則較小?紤]到要使用比平均字符更寬的空間,表列一定要留有足夠余地。另外,也可以使用固定間距的字體(像 Courier 字體)來確保每一字符均只占一列。

(4)PrintFrom方法

  用以將 Form 對象的圖象逐位發(fā)送給打印機。
 
   
語法:object.PrintForm
 
   
說明
PrintForm 將打印 Form 對象的全部可見對象和位圖。在繪制圖形時,如果 AutoRedraw 屬性為 True,則在運行時PrintForm 將打印 Form 對象或 PictureBox 控件上的圖形。
 
   
¨PrintForm 所使用的打印機是由操作系統(tǒng)的控制面板中的設置來決定。

(5) Refresh方法

  強制全部重繪一個窗體或控件。
 
   
語法:object.Refresh
 
   
說明:
在下列情況下使用 Refresh 方法:
 
    
 ¨在另一個窗體被加載時顯示一個窗體的全部。
 
     
¨更新諸如 FileListBox 控件之類的文件系統(tǒng)列表框的內(nèi)容。
 
     
¨ 更新 Data 控件的數(shù)據(jù)結(jié)構(gòu)。
 
      Refresh
方法不能用于 MDI 窗體,但能用于 MDI 子窗體。不能在 Menu Timer 控件上使用 Refresh 方法。

     通常,如果沒有事件發(fā)生,窗體或控件的繪制是自動處理的。但是,有些情況下希望窗體或控件立即更新。例如,如果使用文件列表框、目錄列表框或者驅(qū)動器列表框顯示當前的目錄結(jié)構(gòu)狀態(tài),當目錄結(jié)構(gòu)發(fā)生變化時可以使用 Refresh 更新列表。

     可以在 Data 控件上使用 Refresh 方法來打開或重新打開數(shù)據(jù)庫(如果 DatabaseName, ReadOnly, Exclusive Connect 屬性的設置值發(fā)生改變),并能重建控件的 Recordset 屬性內(nèi)的 dynaset。

(6)Show方法

   用以顯示 MDIForm Form 對象。
 
   
語法:object.Show style, ownerform
 
   
Show 方法的語法包含下列部分:

部分

描述

object

可選的。一個對象表達式,其值為“應用于”列表中的一個對象。如果省略 object,則與活動窗體模塊關(guān)聯(lián)的窗體缺省為 object。

Style

可選的。一個整數(shù),它用以決定窗體是模式還是無模式 。如果 style 0,則窗體是無模式的;如果 style 1,則窗體是模式的。

Ownerform

可選的。字符串表達式,指出部件所屬的窗體被顯示。對于標準的Visual Basic 窗體,使用關(guān)鍵字 Me。

  說明
 
     
¨如果調(diào)用 Show 方法時指定的窗體沒有裝載,Visual Basic 將自動裝載該窗體。
 
     
¨ Show 在顯示無模式窗體時,隨后遇到的代碼則要執(zhí)行。當 Show 在顯示模式窗體 (modal form) 時,則隨后的代碼直到該窗體被隱藏或卸載時才能執(zhí)行。
 
     
¨ Show 在顯示模式窗體時,除了模式窗體中的對象之外不能進行輸入(鍵盤或鼠標單擊)。對其它窗體進行輸入前程序必須隱藏或卸載模式窗體(通常是處于響應用戶某些操作狀態(tài))。MDIForm 不能是形式的。
 
     
¨在模式窗體顯示時,雖然應用程序中的其它窗體失效,但其它應用程序不會失效。
 
    
¨應用程序的啟動窗體在其 Load 事件調(diào)用后會自動出現(xiàn)。

   下面的例子說明如何使用ownerform 參數(shù):
 
    
Private Sub cmdShowResults_Click()
     '
顯示模式窗體 frmResults.
      frmResults.Show vbModal, Me
    End Sub

(7)Cls方法

   清除運行時 Form PictureBox 所生成的圖形和文本。
  

   語法:
object.Cls
  
  
說明
  
   
¨Cls 將清除圖形和打印語句在運行時所產(chǎn)生的文本和圖形,而設計時在 Form 中使用 Picture 屬性設置的背景位圖和放置的控件不受 Cls 影響。如果激活 Cls 之前 AutoRedraw 屬性設置為 False 調(diào)用時該屬性設置為 True,則放置在 Form PictureBox 中的圖形和文本也不受影響。 這就是說,通過對正在處理的對象的 AutoRedraw 屬性進行操作,可以保持 Form PictureBox 中的圖形和文本。
  
    
¨調(diào)用 Cls 之后,object CurrentX CurrentY 屬性復位為 0

3.窗體的常用事件
 
  (1)  Load
事件
 
  
 這個事件發(fā)生在窗體被裝入內(nèi)存時,且發(fā)生在窗體出現(xiàn)在屏幕之前。窗體出現(xiàn)之前,Visual Basic會看一看Load事件里有沒有代碼,如果有,那么它先執(zhí)行這些代碼,再讓窗體出現(xiàn)在屏幕上。

  (2) Click事件,Dblclick事件
 
   
這兩個事件在單擊或雙擊窗體時發(fā)生。不過單擊窗體里的控件時,窗體的Click事件并不會發(fā)生,Visual Basic會去看控件的Click事件里有沒有代碼。

  (3)Activate (活動事件)Deactivate(非活動事件)
   
    顯示多個窗體時,可以從一個窗體切換到另一個窗體。每次激活一個窗體時,發(fā)生
Activate 事件,而前一個窗體發(fā)生Deactivate事件。

  4Resize事件
 
    
在窗體被改變大小時會觸發(fā)此事件。

4.窗體的控制

(1) 裝入或卸出窗體
  
 
 要裝入或卸出窗體,用Load 或Unload語句。
  
  
裝入窗體 Load formName
  
  
卸出窗體 UnLoad formName

   FormName變量是要裝入或卸出的窗體名。 Load語句只是把窗體裝入內(nèi)存,并不顯示出來,要顯示窗體可以使用窗體的Show方法。

(2) 顯示或隱藏窗體
  
  
要顯示或隱藏窗體,用ShowHide方法。若尚未裝入內(nèi)存則先裝入再顯示。
  
  
顯示窗體:  formName.show mode
  
  
隱藏窗體:  formName.hide

     FormName變量是窗體名,可選變元mode0(缺省值)時窗體為非模態(tài),為1時窗體為模態(tài)。模態(tài)窗體完全占有應用程序控制權(quán),不允許切換到別的應用程序,除非關(guān)閉!而非模態(tài)窗體則反之。

 3END語句

   END語句的功能是終止應用程序的執(zhí)行,并從內(nèi)存卸在所有窗體。語法是: END

2.3 控件

1.       常用控件介紹

         1)標準控件一

TextBox 文本框

Timer計時器

HscrollBar水平滾動條

ListBox列表框

Pointer 指針

VScrollBar 垂直滾動條

CheckBox 復選框

Label標簽

DirListBox 文件夾列表框

PictureBox圖片框

Line 線條

DriveListBox 驅(qū)動器列表框

ComboBox 組合框

Shape 圖形

FileListBox文件列表框

OptionButton選項按鈕

Image圖象

Data 數(shù)據(jù)控件

CommandButton 命令按鈕

Frame 框架

OLE控件

 

(2)      常用控件的屬性、方法和事件

公共屬性

Name、Caption、Enabled、Fantsize、Height、Width、IndexLeft、Top、 TabStop

公共方法

Move、Refresh、Setfocus(設置焦點)

公共事件

ClickDblClickLostFocus(失去焦點)

控件名稱

屬性、方法、事件

說明

TextBox  文本框

(用于接受用戶在框內(nèi)輸入的內(nèi)容)

Text屬性

即用戶從文本框輸入的內(nèi)容

PasswordChar屬性

設置口令時用的掩碼,如:用*代替實際輸入的內(nèi)容

MaxLength屬性

最大長度,缺省值是0,即可以輸入任意個字符

MultiLine屬性

True時可以多行文本,為False時只能輸入一行文本

Alignment 屬性

文本在框中的對齊方式:0=左對齊,1=右對齊,2=居中

Chang事件

當框中的文本內(nèi)容發(fā)生變化時觸發(fā)該事件

LostFocus事件

當光標離開文本框時觸發(fā)該事件

Label 標簽(用于在窗體上添加文字說明)

Alignment屬性

Caption文本的對齊方式:0=左對齊,1=右對齊,2=居中

WordWrap屬性

True時可根據(jù)標簽大小自動換行

AutoSize屬性

自動調(diào)節(jié)大小,為True時可根據(jù)文本大小自動調(diào)整標簽大小,為False時標簽大小不能改變,過長的文本被截掉

ListBox 列表框

(用于列出可供用戶選擇的項目列表)

List屬性

用于保存列表內(nèi)容,訪問: [對象名]. List(列表項序號)

列表項的序號由上到下依次為0、12、3……

ListCount屬性

列表項數(shù)目

ListIndex屬性

列表項索引,其值為最后選中的列表項序號,第一個為0,如果未選中任何表項,其值為-1。

Text屬性

列表項正文,其值為最后選中的列表項的文本,它與

ListListIndex)相同。

Columns屬性

列表框顯示形式取0時為一列顯示所有行,其他值為多列。

Sort屬性

排序?qū)傩,?/SPAN>True時,列表項按ASCII碼排序,為False時,則不排序。

AddItem方法

添加列表項,使用格式:

[ 對象名.] AddItem<列表項文本>[,插入位置序號]

若不指定位置,則插入到列表末尾。

 Clear方法

刪除列表所有項目

RemoveItem方法

刪除列表項,使用格式:

[ 對象名 .] RemoveItem  刪除項序號

PictureBox 圖片框

Image  圖象(用來把圖形放入程序里)

AutoSize/Stretch

屬性

調(diào)整圖片框以適應圖象 / 調(diào)整圖象以適應外框

Picture屬性

決定控件中顯示的圖象

裝入圖形:

imgMyHand.Picture = LoadPicture ( “c:\graphics\hand.bmp” )

刪除圖形:  imgMyHand.Picture = LoadPicture ( “ ” )

ComboBox 組合框(將列表框和文本框結(jié)合在一起)

Style屬性

外觀屬性:取0時,系統(tǒng)創(chuàng)建一個帶下拉式列表框的組合框;為1時,系統(tǒng)創(chuàng)建一個由文本框和列表框直接組合在一起的簡單組合框,可以從列表框中選擇,也可以直接在文本框中輸入;為2時,系統(tǒng)創(chuàng)建一個沒有文本框的下拉式列表框,單擊列表框上的按鈕才顯示文本框,用戶不能在文本框中輸入,只能在列表框中選擇。

Text 屬性

其值為用戶從列表框中選定的文本或直接輸入的文本。

AddItem方法

添加列表項,使用格式:

[ 對象名.] AddItem<列表項文本>[,插入位置序號]

若不指定位置,則插入到列表末尾。

Clear方法

刪除列表所有項目

RemoveItem 方法

刪除列表項,使用格式:

[ 對象名 .] RemoveItem  刪除項序號

CommandButton

命令按鈕

Cancel屬性

取消屬性,它為True, 按〖ESC〗即等于單擊此按鈕。

Default屬性

缺省屬性,它為True, 按回車鍵即等于單擊此按鈕。

Timer計時器

Interval屬性

兩次調(diào)用Timer事件的事件間隔,用于創(chuàng)建動態(tài)效果。

Frame 框架

CheckBox 復選框

OptionButton選項按鈕

Alignment屬性

決定它們的對齊方式,0=左對齊,1=右對齊。

Value屬性

決定它們是否被選中的屬性

2.       常用控件的使用辨析

1)文本框和標簽的區(qū)別:

    文本框通常用于向計算機輸入信息,而標簽通常用于輸出信息。文本框是一個十分重要的控件,因為由復選框和選項按鈕向程序輸入的信息畢竟只有少數(shù)的幾條信息而已。標簽和文本框的區(qū)別很小,標簽可以看成是一個在運行時不能修改正文的文本框,因此標簽主要用于輸出信息。

(2)  LabelAutoSize屬性和WordWrap屬性

   ¨     為了使標簽具有垂直伸展和字換行處理,必須設置它的AutoSize屬性和WordWrap屬性同時為True
  
   ¨    
AutoSize屬性為False,WordWrap屬性為False時,若標簽不夠高而Caption太長時,Caption將被切割掉。
  
  
¨     AutoSize屬性為FalseWordWrap屬性為True時,情況也如此。
  
  
¨      AutoSize屬性為True,WordWrap屬性為False時,表示可以水平伸展,但只顯示一行信息。

(3) PictureBoxImageStretch屬性和AutoSize屬性

   ¨  Image只有Stretch屬性,而PictureBox只有AutoSize屬性。
  
   ¨  
AutoSize屬性設為True,則PictureBox改變自己的大小來適應其中的圖形。
  
  
¨   Stretch屬性設為True,則Image中的圖形將改變自己的大小來適應外面的邊框。

4Frame 框架、CheckBox 復選框、OptionButton選項按鈕的區(qū)別:

   ¨  復選框和選項按鈕用于向程序輸入信息, 框架用來對復選框和選項按鈕進行分組。
 
   
¨   復選框選中時會在小方框里打一個鉤,選項按鈕選中時會在小圓圈里點一個點。

3.控件使用舉例

   34