版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
第三章
VisualBasic.NET可視化程序設(shè)計(jì)初步
3.1
窗體的結(jié)構(gòu)、常用屬性和事件
3.1.1窗體的結(jié)構(gòu)
窗體是VisualBasic.NET中的對(duì)象,在VisualStudio.NET設(shè)計(jì)狀態(tài)下,稱其為窗體。窗體結(jié)構(gòu)與Windows環(huán)境下的窗口的結(jié)構(gòu)是一致的,如圖3.1所示。(1)控制菜單框:雙擊該圖標(biāo)可關(guān)閉窗體。如果單擊該圖標(biāo),將顯示系統(tǒng)菜單。(2)標(biāo)題欄:其中顯示窗體的標(biāo)題。(3)最小化按鈕:單擊該按鈕,將窗體縮小為一個(gè)圖標(biāo)。(4)最大化按鈕:單擊該按鈕,將窗體擴(kuò)大至整個(gè)屏幕。(5)關(guān)閉按鈕:單擊該按鈕,將關(guān)閉窗體。(6)窗體工作區(qū):在設(shè)計(jì)階段,它相當(dāng)于一塊“畫布”,程序員可利用VisualStudio.NET集成開發(fā)環(huán)境的工具箱中的控件在其中畫出所需要的對(duì)象,如:文本框、命令按鈕等。(7)邊框:窗體四周邊界,不同類型的邊框決定了窗體標(biāo)題欄中的按鈕數(shù)與可縮放性。3.1.2窗體的常用屬性
窗體是對(duì)象,其各屬性的當(dāng)前取值決定了窗體的外觀、狀態(tài)等,用戶可以在設(shè)計(jì)階段通過屬性窗口來設(shè)定屬性值,也可以利用程序代碼在程序運(yùn)行期間設(shè)置屬性值。1.外觀(Appearance)類屬性(1)Text屬性用于獲取或設(shè)置窗體的標(biāo)題名稱。如:在程序代碼中,語句:Me.Text=“hello”將窗體的標(biāo)題信息設(shè)置為“Hello”。
(2)BackColor屬性用于獲取或設(shè)置窗體工作區(qū)的背景顏色,每種顏色使用一個(gè)Long型值來表示。在程序代碼中,可以采用以下兩種方式之一來指定顏色值:表3.1System.Drawing命名空間內(nèi)的Color結(jié)構(gòu)的部分顏色值成員
顏色成員功能Black黑色Blue藍(lán)色Brown棕色Gray灰色Green綠色Pink粉紅色Purple紫色Red紅色Silver銀色White白色Yellow黃色①方式1:VisualBasic.NET2005中,為了方便用戶記憶和使用顏色值,一些常用顏色的顏色值采用符號(hào)常量來表示,在System.Drawing命名空間內(nèi)的Color結(jié)構(gòu)中定義了用于表示一些常用顏色的常數(shù),如表3.1所示。在程序代碼中要使用Color結(jié)構(gòu)中的某種顏色時(shí)的完全限定名為:System.Drawing.Color.成員名如:語句Me.BackColor=System.Drawing.Color.Blue表示將窗體的背景顏色設(shè)置為藍(lán)色。
②方式2:調(diào)用System.Drawing命名空間的ColorTranslator類的FromOle方法,將QBColor函數(shù)、RGB函數(shù),或Long類型數(shù)值翻譯成GDI+Color結(jié)構(gòu)并從該結(jié)構(gòu)翻譯顏色。該方法的語法格式如下:
System.Drawing.ColorTranslator.FromOle(參數(shù))
其中:FromOle方法的參數(shù)可以是QBColor函數(shù)、RGB函數(shù),或Long類型數(shù)值。
第一種情況:QBColor函數(shù),格式是:QBColor(參數(shù))。該函數(shù)的參數(shù)值取0至15,可以返回0至15顏色號(hào)所對(duì)應(yīng)的顏色值,如表3.2所示。數(shù)字
顏色
數(shù)字
顏色
0黑色8灰色1藍(lán)色9淺藍(lán)色2綠色10淡綠色3青色11淡青色4紅色12淺紅色5洋紅色13淺洋紅色6黃色14淡黃色7白色15亮白色表3.2QBColor函數(shù)的參數(shù)值及其對(duì)應(yīng)顏色如:要將當(dāng)前窗體的背景顏色設(shè)置為淺藍(lán)色,程序代碼可以寫為:
Me.BackColor=System.Drawing.ColorTranslator.FromOle(QBColor(9))
第二種情況:RGB函數(shù),格式是:RGB(r,g,b)。三個(gè)參數(shù)r、g、b分別表示紅、綠、藍(lán)三元色的分量值,范圍都為0至255。RGB函數(shù)根據(jù)三元色的分量值計(jì)算出對(duì)應(yīng)的某種顏色的顏色值。如:要將當(dāng)前窗體的背景顏色設(shè)置為藍(lán)色,程序代碼可以寫為:
Me.BackColor=System.Drawing.ColorTranslator.FromOle(RGB(0,0,255))
第三種情況:Long型值,該值是某種顏色的顏色值。如:要將當(dāng)前窗體的背景顏色設(shè)置為紅色,由于紅色的顏色值為&HFF&,因此,程序代碼可以寫為:
Me.BackColor=System.Drawing.ColorTranslator.FromOle(&HFF&)(3)BackGroundImage屬性用于獲取或設(shè)置窗體工作區(qū)中顯示的背景圖像。
VisualBasic.NET2005中,在System.Drawing命名空間內(nèi)的Image類提供了FromFile方法,在程序代碼中,可以使用該方法來設(shè)置窗體或其他對(duì)象的背景圖像。格式是:
對(duì)象名.BackGroundImage=System.Drawing.Image.FromFile(圖像文件路徑及名稱)(4)ForeColor屬性用來獲取或設(shè)置窗體的前景顏色,其設(shè)置方法與BackColor屬性相同。(5)FormBorderStyle屬性用于獲取或設(shè)置窗體邊框的樣式。該屬性值的類型為System.Windows.Forms命名空間中的FormBorderStyle枚舉類型,其中包括如表3.3中所示的7個(gè)成員,分別表示7種不同的邊框樣式。
表3.3System.Windows.Forms命名空間內(nèi)的FormBorderStyle枚舉成員枚舉成員含義與功能None窗體無邊框、無標(biāo)題欄、窗體大小固定FixedSingle窗體邊框?yàn)楣潭▎芜吙?,窗體大小不能靠拖動(dòng)邊框線來改變Fixed3D窗體邊框?yàn)楣潭ǖ牧Ⅲw邊框,窗體大小不能靠拖動(dòng)邊框線來改變Sizable默認(rèn)值,邊框?yàn)殡p線邊界,窗體大小可用拖動(dòng)邊框線的方法改變FixedDialog窗體邊框?yàn)楣潭ǖ碾p線邊框,窗體大小不能靠拖動(dòng)邊框線來改變FixedToolWindow窗體為固定工具窗口,窗體大小不能靠拖動(dòng)邊框線來改變,標(biāo)題欄中只有關(guān)閉按鈕SizableToolWindow窗體為可變大小工具窗口,窗體大小可改變,標(biāo)題欄中只有關(guān)閉按鈕(6)Font屬性用于獲取或設(shè)置輸出字符的字體樣式、大小、效果等。該屬性的值為System.Drawing命名空間中的Font類類型。此屬性是一個(gè)組合屬性,其中包括Name、Size、Unit、Bold、Italic、Strikeout、Unerline等子屬性,分別表示字體名稱、大小、字體大小的單位、是否加粗、是否斜體、是否加刪除線、是否加下劃線等。在程序代碼中,可以利用Font類設(shè)置對(duì)象的字體及其樣式,語法格式是:
對(duì)象名.Font=NewFont(字體名,字體大小[,字體樣式,字體單位])
其中:①參數(shù)“字體名”是必選的,表示系統(tǒng)支持的字體的名稱,如:宋體、隸書等。②參數(shù)“字體大小”是必選的,即字體的大小,如:字體大小為10、20等。③參數(shù)“字體樣式”是可選的,表示字體的樣式,如:加粗、傾斜、下劃線等。該參數(shù)用System.Drawing命名空間中的FontStyle枚舉來表示,如表3.4所示。表3.4System.Drawing命名空間內(nèi)的FontStyle枚舉成員及其功能
枚舉成員
功能
Bold加粗文本Italic傾斜文本Regular普通文本Strikeout中間有刪除線的文本Underline帶下劃線的文本④參數(shù)“字體單位”是可選的,表示字體大小的衡量單位。該參數(shù)用System.Drawing命名空間中的GraphicsUnit枚舉來表示,如表3.5所示。表3.5System.Drawing命名空間內(nèi)的GraphicsUnit枚舉成員及其功能
枚舉成員功能Display指定顯示設(shè)備的度量單位。通常,視頻顯示使用的單位是像素;打印機(jī)使用的單位是1/100英寸Document將文檔單位(1/300英寸)指定為度量單位
Inch將英寸指定為度量單位Millimeter將毫米指定為度量單位Pixel將設(shè)備像素指定為度量單位Point將打印機(jī)點(diǎn)(1/72英寸)指定為度量單位World將世界坐標(biāo)系單位指定為度量單位如:在程序代碼中,可以使用以下語句將窗體的字體設(shè)置為宋體、20像素大小、斜體:Me.Font=NewFont("宋體",20,FontStyle.Italic,GraphicsUnit.Pixel)
2.行為(Behavior)類屬性(1)Enabled屬性用于設(shè)置窗體是否能對(duì)用戶的交互動(dòng)作作出反應(yīng)。其值可為True(默認(rèn)值)或False。當(dāng)為False時(shí),窗體呈灰色顯示,表示處于禁止?fàn)顟B(tài),窗體不能響應(yīng)用戶的鼠標(biāo)、鍵盤動(dòng)作等。(2)ContextMenuStrip屬性用于設(shè)置與窗體相關(guān)聯(lián)的右鍵菜單(快捷菜單)。3.窗體布局(Layout)類屬性(1)Location屬性用于獲取或設(shè)置窗體的左上角相對(duì)于屏幕的左上角的坐標(biāo),其初始默認(rèn)值在坐標(biāo)(0,0)處。注:屏幕坐標(biāo)的坐標(biāo)原點(diǎn)在左上角,向右為X軸,向下為Y軸。此屬性是一個(gè)組合屬性,其中包括X和Y兩個(gè)子屬性,二者表示一坐標(biāo)位置(X,Y)。該屬性的值是System.Drawing命名空間中的Point類型的結(jié)構(gòu)。如:語句Me.Location=NewSystem.Drawing.Point(100,200)表示將窗口的左上角的位置設(shè)置在(100,200)處。(2)Size屬性該屬性用于獲取或設(shè)置窗體的大?。ㄒ韵袼貫閱挝唬?。此屬性是一個(gè)組合屬性,其中包括Width和Height兩個(gè)子屬性,分別表示窗體的寬度和高度。該屬性的值是System.Drawing命名空間中的Size類型的結(jié)構(gòu)。如:語句Me.Size=NewSystem.Drawing.Size(300,200)將窗口寬度設(shè)置為300像素、高度設(shè)置為200像素。(3)StartPosition屬性用于設(shè)置運(yùn)行時(shí)顯示窗體時(shí)窗體的起始位置。該屬性值的類型為System.Windows.Forms命名空間中的FormStartPosition枚舉類型,其中包括如表3.6中所示的5個(gè)成員,分別表示5種不同的窗體起始位置。3.6System.Windows.Forms命名空間內(nèi)的FormStartPosition枚舉成員表枚舉成員含義與功能CenterParent窗體在其父窗體中居中CenterScreen窗體在屏幕中央Manual窗體的位置由Location
屬性確定WindowsDefaultBounds窗體定位在Windows默認(rèn)位置,邊界也由Windows默認(rèn)決定WindowsDefaultLocation窗體定位在Windows默認(rèn)位置在程序代碼中要使用FormStartPosition枚舉中的某個(gè)成員時(shí)的完全限定名為:System.Windows.Forms.FormStartPosition.成員名。如:在窗體的New方法中,可用以下代碼使窗體顯示時(shí)的初始位置位于屏幕中央:Me.StartPosition=System.Windows.Forms.FormStartPosition.CenterScreen(4)WindowState屬性用來獲取或設(shè)置窗體的窗口狀態(tài),該屬性值的類型為System.Windows.Forms命名空間中的FormWindowState枚舉類型,其中包括如表3.7中所示的3個(gè)成員,分別表示3種不同的窗口狀態(tài)。枚舉成員含義與功能Normal程序運(yùn)行時(shí),窗體為正常狀態(tài),窗體的大小為設(shè)計(jì)時(shí)大小Minimized程序運(yùn)行時(shí),窗體最小化為一個(gè)示意圖標(biāo),為最小化狀態(tài)Maximized程序運(yùn)行時(shí),窗口充滿整個(gè)屏幕,為最大化狀態(tài),無邊框,標(biāo)題欄中只有標(biāo)題信息表3.7System.Windows.Forms命名空間內(nèi)的FormWindowState枚舉成員在程序代碼中要使用FormWindowState枚舉中的某個(gè)成員時(shí)的完全限定名為:
System.Windows.Forms.FormWindowState.成員名如,在窗體的New方法中,可以使用以下程序代碼使窗體顯示時(shí)最大化:
Me.WindowState=System.Windows.Forms.FormWindowState.Maximized4.窗體設(shè)計(jì)(Design)類屬性(1)Name屬性窗體的名稱,該屬性不能為空,且只能在設(shè)計(jì)狀態(tài)下設(shè)置。每當(dāng)向項(xiàng)目中添加一個(gè)新窗體時(shí),系統(tǒng)自動(dòng)為該窗體起一個(gè)默認(rèn)的名稱,如:Form1、Form2等。(2)Locked屬性用來設(shè)置是否鎖定窗體中的控件(即是否允許能夠移動(dòng)控件和調(diào)整控件的大?。?,其設(shè)置值可為True或False(默認(rèn)值),當(dāng)設(shè)置為True時(shí),則不能移動(dòng)窗體中的控件或改變控件的大小。5.窗體樣式(WindowsStyle)類屬性(1)ControlBox屬性用來獲取或設(shè)置窗口的控制菜單框,其設(shè)置值可為True或False。當(dāng)設(shè)置為True(默認(rèn)值)時(shí),窗口標(biāo)題條中將顯示控制菜單框和其他按鈕;當(dāng)設(shè)置為False時(shí),窗口的標(biāo)題條中不顯示任何按鈕。(2)Icon屬性用來設(shè)置窗體最小化時(shí)的圖標(biāo),圖標(biāo)文件是.ico格式的文件。(3)IsMDIContainer屬性用來設(shè)置窗體是否是多文檔窗體(MDI)的容器,其設(shè)置值可為True或False(默認(rèn)值),當(dāng)設(shè)置為True時(shí),則窗體變?yōu)槎辔臋n窗體的容器。(4)MaximizeBox屬性用來設(shè)置窗體是否具有最大化按鈕,其設(shè)置值可為True(默認(rèn)值)或False,當(dāng)設(shè)置為False時(shí),則窗體無最大化按鈕。(5)MinimizeBox屬性用來設(shè)置窗體是否具有最小化按鈕,其設(shè)置值可為True(默認(rèn)值)或False,當(dāng)設(shè)置為False時(shí),則窗體無最小化按鈕。(6)ShowInTaskbar屬性用來設(shè)置窗體在程序運(yùn)行時(shí)是否在任務(wù)欄中顯示對(duì)應(yīng)的按鈕,其設(shè)置值可為True(默認(rèn)值)或False,當(dāng)設(shè)置為False時(shí),則不在任務(wù)欄中顯示對(duì)應(yīng)于窗口的按鈕。(7)TopMost屬性用來設(shè)置窗體在程序運(yùn)行時(shí)是否始終在屏幕最上層顯示,其設(shè)置值可為True或False(默認(rèn)值),當(dāng)設(shè)置為True時(shí),則窗體始終顯示在屏幕的最上層。6.雜項(xiàng)類屬性(1)AcceptButton屬性用于設(shè)置窗體的“接受”按鈕。當(dāng)把窗體的AcceptButton屬性設(shè)置為窗體中的某個(gè)按鈕時(shí),則在程序運(yùn)行過程中,直接在窗體上按回車鍵與單擊該按鈕的功能相同,即觸發(fā)該按鈕的Click事件。(2)CancelButton屬性用于設(shè)置窗體的“取消”按鈕。當(dāng)把窗體的CancelButton屬性設(shè)置為窗體中的某個(gè)按鈕時(shí),則在程序運(yùn)行過程中,直接在窗體上按ESC鍵與單擊該按鈕的功能相同,即觸發(fā)該按鈕的Click事件。3.1.3窗體的常用事件
1.Load事件在程序運(yùn)行過程中,當(dāng)窗體第一次加載顯示時(shí),系統(tǒng)自動(dòng)觸發(fā)該事件,此時(shí)系統(tǒng)會(huì)自動(dòng)執(zhí)行窗體的Load事件過程中的程序代碼。之后,該事件一直到窗體關(guān)閉都不會(huì)再觸發(fā)。因此,一般可將程序中需要初始化的程序代碼寫在該事件過程中。2.Activated事件在程序運(yùn)行時(shí),當(dāng)窗體第一次加載時(shí),此事件緊跟在Load事件后面被自動(dòng)觸發(fā)一次。在程序運(yùn)行過程中,當(dāng)后面窗體置于頂層時(shí)觸發(fā)該事件。因此,此事件在程序運(yùn)行過程中可能不只被觸發(fā)一次。當(dāng)窗體的Activated事件被觸發(fā)時(shí),系統(tǒng)將執(zhí)行窗體的Activated事件過程中的程序代碼。3.Click事件當(dāng)在程序運(yùn)行過程中,單擊窗體的空白區(qū)域,則會(huì)觸發(fā)窗體的單擊事件,此時(shí)系統(tǒng)會(huì)自動(dòng)調(diào)用執(zhí)行窗體的Click事件過程中的程序代碼。4.DoubleClick事件當(dāng)在程序運(yùn)行過程中,雙擊窗體的空白區(qū)域,則會(huì)觸發(fā)窗體的雙擊事件,此時(shí)系統(tǒng)會(huì)自動(dòng)調(diào)用執(zhí)行窗體的DoubleClick事件過程中的程序代碼。5.Resize、ResizeBegin、ResizeEnd、SizeChanged事件在程序運(yùn)行過程中,當(dāng)用戶改變窗體的大小時(shí),會(huì)觸發(fā)Resize事件,此時(shí)系統(tǒng)執(zhí)行窗體的Resize事件過程中的程序代碼。在窗體的大小改變時(shí),通常會(huì)觸發(fā)以下事件集:(1)窗體進(jìn)入改變大小狀態(tài)時(shí)觸發(fā)單個(gè)ResizeBegin事件。(2)改變窗體的大小時(shí)觸發(fā)零對(duì)或多對(duì)Resize事件和SizeChanged事件。(3)當(dāng)完成窗體的大小改變動(dòng)作時(shí)觸發(fā)ResizeEnd事件。6.Paint事件在程序運(yùn)行過程中,當(dāng)窗體被最小化為圖標(biāo),又恢復(fù)正常顯示狀態(tài)、全部或部分窗體內(nèi)容被遮住再移走上面的窗體時(shí),將自動(dòng)觸發(fā)窗體的Paint事件,系統(tǒng)將執(zhí)行窗體的Paint事件過程中的程序代碼。7.FormClosed、FormClosing事件當(dāng)關(guān)閉窗體時(shí),觸發(fā)窗體的FormClosing事件,窗體關(guān)閉完畢后,觸發(fā)窗體的FormClosed事件。當(dāng)對(duì)應(yīng)的事件觸發(fā)時(shí),系統(tǒng)將執(zhí)行窗體的FormClosing或FormClosed事件過程中的程序代碼。3.1.4窗體的常用方法
窗體有以下常用的方法:1.加載并顯示窗體Show方法該方法的語法格式:[Me.]Show()2.隱藏窗體Hide方法該方法的語法格式:[Me.]Hide()3.關(guān)閉窗體Close方法該方法的語法格式:[Me.]Close()4.關(guān)于Me關(guān)鍵字
代表當(dāng)前窗體【例3.1】設(shè)計(jì)一個(gè)Windows應(yīng)用程序(1)在設(shè)計(jì)階段,設(shè)置窗體的有關(guān)屬性的屬性值,使其滿足以下要求:①將窗體的最大化、最小化按鈕設(shè)置為無效;②將窗體的邊框設(shè)置為固定的單邊框;③將窗體的背景顏色設(shè)置為藍(lán)色;④將窗體的初始位置設(shè)置為在屏幕居中;⑤使程序運(yùn)行時(shí)窗體始終處于屏幕的最上層;⑥將窗體的名稱設(shè)置為“frmTest”。(2)編寫程序代碼,在程序運(yùn)行階段,當(dāng)用戶在窗體上單擊時(shí),能完成以下功能:①將窗體的標(biāo)題設(shè)置為“Hello”;②將窗體的背景顏色設(shè)置為黑色;③將窗體的寬度和高度分別設(shè)置為300、200個(gè)像素。
3.2命令按鈕控件Button的常用成員及其使用
1.命令按鈕控件的常用成員
命令按鈕的常用屬性和事件如表3.9所示。表3.9命令按鈕控件Button的常用屬性和事件
類別名稱說明事件Click用戶單擊命令按鈕時(shí),觸發(fā)這個(gè)事件屬性Text標(biāo)題,即顯示在命令按鈕鍵面上的文字TextAlign設(shè)置按鈕上的文字對(duì)齊方式,共有9種對(duì)齊方式。其值是System.Drawing命名空間內(nèi)的ContentAlignment枚舉類型,參見表3.10FlatStyle設(shè)置按鈕的外觀,共有4種外觀方式。其值是System.Windows.Forms命名空間內(nèi)的FlatStyle枚舉類型,參見表3.11Image設(shè)置命令按鈕上顯示的圖形,當(dāng)FlatStyle屬性的值設(shè)置為除System值以外其他值時(shí),該屬性才有效BackGroundImage設(shè)置命令按鈕的背景圖形,當(dāng)FlatStyle屬性的值設(shè)置為除System值以外其他值時(shí),該屬性才有效ImageAlign設(shè)置圖形在按鈕上的對(duì)齊方式,參見TextAlign屬性Enabled該屬性決定命令按鈕是否可用,當(dāng)設(shè)置為True時(shí),表示命令按鈕可用;當(dāng)設(shè)置為False時(shí),命令按鈕的標(biāo)題文字呈灰色顯示,表示該命令按鈕不可用表3.10System.Drawing命名空間內(nèi)的ContentAlignment枚舉類型成員成員名稱說明BottomCenter內(nèi)容在垂直方向上底邊對(duì)齊,在水平方向上居中對(duì)齊BottomLeft內(nèi)容在垂直方向上底邊對(duì)齊,在水平方向上左邊對(duì)齊BottomRight內(nèi)容在垂直方向上底邊對(duì)齊,在水平方向上右邊對(duì)齊MiddleCenter內(nèi)容在垂直方向上中間對(duì)齊,在水平方向上居中對(duì)齊MiddleLeft內(nèi)容在垂直方向上中間對(duì)齊,在水平方向上左邊對(duì)齊MiddleRight內(nèi)容在垂直方向上中間對(duì)齊,在水平方向上右邊對(duì)齊TopCenter內(nèi)容在垂直方向上頂部對(duì)齊,在水平方向上居中對(duì)齊TopLeft內(nèi)容在垂直方向上頂部對(duì)齊,在水平方向上左邊對(duì)齊TopRight內(nèi)容在垂直方向上頂部對(duì)齊,在水平方向上右邊對(duì)齊表3.11System.Windows.Forms命名空間內(nèi)的FlatStyle枚舉類型成員成員名稱說明Flat按鈕以平面顯示
Popup初始以平面顯示,當(dāng)鼠標(biāo)移至按鈕上時(shí),按鈕變成立體3D顯示Standard默認(rèn)值,按鈕以立體3D顯示
System按鈕的外觀由用戶的操作系統(tǒng)決定【例3.2】按如圖3.6所示的畫面設(shè)計(jì)程序界面程序運(yùn)行時(shí),能完成以下功能:(1)單擊“設(shè)置按鈕屬性”命令按鈕時(shí),可以設(shè)置其右側(cè)按鈕的以下屬性:①按鈕上的文字為宋體、16pixel、加粗;②按鈕的背景顏色為藍(lán)色、前景顏色為黃色;③按鈕上的文字在上下和垂直方向上都居中;④按鈕的外觀為平面形式;⑤按鈕標(biāo)題文字為“新標(biāo)題”;⑥按鈕上的圖片對(duì)齊方式在上下方向上居中、水平方向上靠右;⑦按鈕上顯示圖片(設(shè)圖片的路徑及文件名為:e:\program\exp2\disk.bmp)。(2)當(dāng)單擊“設(shè)置窗體背景圖”按鈕時(shí),可在窗體上顯示一張圖片,設(shè)圖片所在路徑及文件名為:e:\program\exp3-2\flower.jpg。
3.3標(biāo)簽控件Label的常用成員及其使用
用途:標(biāo)簽控件用于輸出文本信息,但輸出的信息是靜態(tài)文本,即在程序運(yùn)行過程中,用戶不能編輯標(biāo)簽中顯示的文本。在程序中,標(biāo)簽控件常用于顯示運(yùn)算結(jié)果、提示信息等。
常用事件:標(biāo)簽控件可響應(yīng)的事件有單擊(Click)、雙擊(DoubleClick)等,但通常標(biāo)簽只用于顯示文本,而并不編寫其對(duì)應(yīng)的事件過程。常用屬性:標(biāo)簽控件的常用屬性如表3.13所示。類別名稱說明屬性Text標(biāo)題,用來顯示和輸出文本信息TextAlign標(biāo)簽中的標(biāo)題文字對(duì)齊方式,共有9種對(duì)齊方式。其值是System.Drawing命名空間內(nèi)的ContentAlignment枚舉類型,參見表3.10AutoSize設(shè)置標(biāo)簽控件的大小是否隨標(biāo)題內(nèi)容的大小自動(dòng)調(diào)整,其值可為True或False(默認(rèn)值)。如為True,則根據(jù)Text屬性指定的標(biāo)題內(nèi)容自動(dòng)調(diào)整標(biāo)簽的大??;如為False,則保持設(shè)計(jì)時(shí)定義的標(biāo)簽大小BorderStyle邊框的樣式,共有3種邊框樣式。其值是System.Windows.Forms命名空間內(nèi)的BorderStyle枚舉類型,參見表3.14BackColor設(shè)置標(biāo)簽的背景顏色ForeColor設(shè)置標(biāo)簽內(nèi)文字的顏色(即前景顏色)表3.13標(biāo)簽控件的常用屬性表3.14System.Windows.Forms命名空間內(nèi)的BorderStyle枚舉類型成員成員名稱功能說明Fixed3D立體邊框
FixedSingle單邊框
None無邊框
【例3.3】按如圖3.10所示的畫面設(shè)計(jì)程序界面,程序運(yùn)行時(shí),能完成以下功能:(1)單擊“顯示日期時(shí)間”按鈕時(shí),可以在其上部的標(biāo)簽Label1內(nèi)顯示出當(dāng)前系統(tǒng)的日期和時(shí)間。(2)單擊“設(shè)置標(biāo)簽屬性”按鈕時(shí),可以設(shè)置標(biāo)簽Label1的以下屬性:①標(biāo)簽上的文字為楷體、16pixel;②標(biāo)簽的背景顏色為藍(lán)色、前景顏色為黃色;③標(biāo)簽上的文字在上下和垂直方向上都居中;④標(biāo)簽的邊框樣式為單邊框。3.4文本框控件TextBox的常用成員及其使用
文本框控件TextBox提供一個(gè)文本編輯區(qū)域,常用于輸入、編輯和輸出數(shù)據(jù)(文本)。表3.16列出了文本框常用的事件、屬性和方法。類別名稱說明事件TextChanged當(dāng)文本框里的文字發(fā)生改變時(shí),觸發(fā)該事件GotFocus當(dāng)文本框獲得焦點(diǎn)時(shí),觸發(fā)該事件LostFocus當(dāng)文本框失去焦點(diǎn)時(shí),觸發(fā)該事件KeyPress當(dāng)文本框擁有焦點(diǎn)時(shí),用戶按下并且放開鍵盤上的某個(gè)ANSI鍵時(shí)觸發(fā)該事件,可利用對(duì)應(yīng)該事件的事件過程的e.KeyChar參數(shù)獲取所鍵入的字符方法Clear清空文本框中的文本。在程序代碼中,調(diào)用該方法的語句格式是:對(duì)象名.Clear()Copy復(fù)制文本到剪貼板。在程序代碼中,調(diào)用該方法的語句格式是:對(duì)象名.Copy()Cut剪切文本到剪貼板。在程序代碼中,調(diào)用該方法的語句格式是:對(duì)象名.Cut()表3.16文本框控件TextBox的常用事件、方法和屬性Focus使某一文本框具有輸入焦點(diǎn)。在程序代碼中,調(diào)用該方法的語句格式是:對(duì)象名.Focus()Paste從剪貼板粘貼文本。在程序代碼中,調(diào)用該方法的語句格式是:對(duì)象名.Paste()Select選擇指定文本。在程序代碼中,調(diào)用該方法的語句格式是:對(duì)象名.Select()SelectAll選擇所有文本。在程序代碼中,調(diào)用該方法的語句格式是:對(duì)象名.SelectAll()屬性Enabled文本框是否可用,可以設(shè)置為True(默認(rèn)值)或False,如果設(shè)置為False,則文本框內(nèi)容灰色顯示,變成只讀MaxLength文本框中可輸入的文本的最大長度(字符個(gè)數(shù)),若為0,則表示文本框中的文字?jǐn)?shù)量不受限制Multiline是否支持多行顯示。如果設(shè)置為False(默認(rèn)值),則文本框只能輸入單行文本;如果設(shè)置為True,則文本框可以輸入多行文本PasswordChar密碼字符,即指定顯示在文本框中的替代字符,用于密碼顯示ReadOnly設(shè)置文本框中的內(nèi)容是否允許編輯。當(dāng)為False(默認(rèn)值)時(shí),可以編輯文本框中的文本;當(dāng)為True時(shí),可以滾動(dòng)、選擇和顯示文本框中的文本,但不能編輯ScrollBars設(shè)置是否顯示滾動(dòng)條,共有4種取值。其值是System.Windows.Forms命名空間內(nèi)的ScrollBars枚舉類型,參見表3.17SelectedText文本框中被選取的文本內(nèi)容,只能在程序代碼中使用SelectionStart文本框中被選取的文本的起始位置(即第幾個(gè)字符),但注意起始位置從0計(jì)數(shù),只能在程序代碼中使用SelectionLength文本框中被選取的文本的長度即字符個(gè)數(shù),如果文本框中未選取任何字符,則該屬性值為0,只能在程序代碼中使用TabIndex用戶按下Tab鍵時(shí)光標(biāo)跳動(dòng)的次序,即設(shè)置文本框在窗體中的對(duì)象編號(hào)Text用來獲取或設(shè)置文本框中的文本內(nèi)容System.Windows.Forms命名空間下的ScrollBars枚舉類型成員成員名稱說明Both同時(shí)顯示水平滾動(dòng)條和垂直滾動(dòng)條Horizontal只顯示水平滾動(dòng)條Vertical只顯示垂直滾動(dòng)條
None不顯示任何滾動(dòng)條注:可以利用文本框的Text值來獲取用戶在文本框中輸入的文本,但該值是String類型,如果要利用文本框輸入數(shù)值,則需要利用有關(guān)的類型轉(zhuǎn)換函數(shù)(如:Val、CInt、CDbl函數(shù)等)將Text屬性的值轉(zhuǎn)換為對(duì)應(yīng)的數(shù)值。【例3.4】按如圖3.15所示的畫面設(shè)計(jì)程序界面,程序運(yùn)行時(shí),能完成以下功能:(1)單擊“復(fù)制”、“剪切”按鈕時(shí),可分別能將文本框中被選擇的文本復(fù)制、剪切到剪貼板上。(2)單擊“粘貼”按鈕時(shí),可以將剪貼板上的內(nèi)容粘貼到文本框中的當(dāng)前光標(biāo)處。(3)單擊“格式”按鈕時(shí),能將文本框中的文本格式設(shè)置為楷體、16Pixel、加粗。(4)單擊“退出”按鈕時(shí),結(jié)束程序的運(yùn)行。3.5對(duì)象的輸入焦點(diǎn)與Tab鍵序
1.輸入焦點(diǎn)(1)輸入焦點(diǎn)是指對(duì)象能夠接收用戶鼠標(biāo)或鍵盤輸入的能力,只有當(dāng)對(duì)象具有輸入焦點(diǎn)時(shí),才可接收用戶的輸入。大多數(shù)控件得到或失去焦點(diǎn)時(shí)的外觀是不相同的,如命令按鈕得到焦點(diǎn)后周圍會(huì)出現(xiàn)一個(gè)虛線框,而文本框得到焦點(diǎn)后會(huì)出現(xiàn)閃爍的光標(biāo)等。(2)并不是所有的對(duì)象都具有接收焦點(diǎn)的能力。如:框架(GroupBox)、標(biāo)簽(Label)、菜單(Menu)、計(jì)時(shí)器(Timer)等控件都不能接收輸入焦點(diǎn)。(3)對(duì)于能夠接收焦點(diǎn)的對(duì)象來說,也只有當(dāng)該對(duì)象的Enabled和Visible屬性的值均為True時(shí),它才能接收焦點(diǎn),Enabled屬性決定是否允許對(duì)象響應(yīng)由用戶產(chǎn)生的事件,如鍵盤和鼠標(biāo)事件,而Visible屬性決定了對(duì)象是否可見。(4)當(dāng)對(duì)象得到輸入焦點(diǎn)時(shí),觸發(fā)該對(duì)象的GotFocus事件;而當(dāng)對(duì)象失去輸入焦點(diǎn)時(shí)觸發(fā)該對(duì)象的LostFocus事件。(5)對(duì)于能夠接收輸入焦點(diǎn)的對(duì)象來說,可以用以下的方法將其獲得輸入焦點(diǎn):方法1:在程序運(yùn)行時(shí)用鼠標(biāo)單擊該對(duì)象。方法2:在程序運(yùn)行時(shí)按下Tab鍵,焦點(diǎn)會(huì)從一個(gè)對(duì)象移到另一個(gè)對(duì)象,移動(dòng)的次序與對(duì)象的Tab鍵序一致。方法3:在設(shè)計(jì)階段,在代碼中利用對(duì)象的Focus()方法2.Tab鍵序與TabIndex屬性(1)Tab鍵序是指在程序運(yùn)行過程中,當(dāng)用戶按下Tab鍵時(shí),輸入焦點(diǎn)在控件間移動(dòng)的順序。(2)每個(gè)窗體都有自己各自的Tab鍵序,Tab鍵序總是和窗體內(nèi)各控件的TabIndex屬性值的大小一致。缺省情況下,一個(gè)窗體中各控件的Tab鍵序是與這些控件在建立時(shí)的先后次序一致的,也就是說,窗體中第一個(gè)建立的控件的TabIndex屬性值為0,第二個(gè)建立的控件的TabIndex屬性值為1,……。(3)可以采用以下兩種方法之一改變窗體原有的Tab鍵序:方法1:在屬性窗口中重新設(shè)置各控件的TabIndex屬性值來改變一個(gè)控件的Tab鍵序,但如果用戶從中更改了某一控件的原TabIndex屬性值,則窗體中其他控件的TabIndex屬性值將自動(dòng)重新編號(hào),也就是說,窗體內(nèi)的各控件的TabIndex屬性值不能重復(fù)。方法2:①執(zhí)行“視圖”菜單中的“Tab鍵順序”菜單命令。它激活窗體上的Tab鍵順序選擇模式。在每個(gè)控件的左上角出現(xiàn)一個(gè)數(shù)字(表示TabIndex
屬性值)。如圖3.1
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025版?zhèn)€人門面房出租合同(附家具租賃及經(jīng)營指導(dǎo)服務(wù))3篇
- 個(gè)人商鋪?zhàn)赓U協(xié)議標(biāo)準(zhǔn)文本2024
- 2025年中國驗(yàn)眼鏡架市場(chǎng)調(diào)查研究報(bào)告
- 氣候適應(yīng)能力提升-深度研究
- 2025至2031年中國水泥標(biāo)準(zhǔn)干篩行業(yè)投資前景及策略咨詢研究報(bào)告
- 二零二五年度環(huán)保節(jié)能車間承包運(yùn)營協(xié)議4篇
- 倉庫數(shù)據(jù)隱私保護(hù)-深度研究
- 二零二五年度企業(yè)培訓(xùn)項(xiàng)目持續(xù)改進(jìn)與優(yōu)化協(xié)議3篇
- 2025至2030年中國竹雕工藝品數(shù)據(jù)監(jiān)測(cè)研究報(bào)告
- 二零二五年度醫(yī)療設(shè)備庫存回購合同范本2篇
- 2025-2030年中國MPV汽車市場(chǎng)全景調(diào)研及投資策略分析報(bào)告
- 二零二五年度數(shù)據(jù)存儲(chǔ)與備份外包服務(wù)協(xié)議2篇
- 2024-2025學(xué)年初中七年級(jí)上學(xué)期數(shù)學(xué)期末綜合卷(人教版)含答案
- 第五單元《習(xí)作例文:風(fēng)向袋的制作》說課稿-2024-2025學(xué)年五年級(jí)上冊(cè)語文統(tǒng)編版
- T型引流管常見并發(fā)癥的預(yù)防及處理
- JJG 1204-2025電子計(jì)價(jià)秤檢定規(guī)程(試行)
- 2024年計(jì)算機(jī)二級(jí)WPS考試題庫(共380題含答案)
- 中建集團(tuán)面試自我介紹
- 2024年江蘇農(nóng)牧科技職業(yè)學(xué)院單招職業(yè)適應(yīng)性測(cè)試題庫參考答案
- 2024版《53天天練單元?dú)w類復(fù)習(xí)》3年級(jí)語文下冊(cè)(統(tǒng)編RJ)附參考答案
- 知識(shí)圖譜與大模型融合實(shí)踐研究報(bào)告
評(píng)論
0/150
提交評(píng)論