Windows窗體應(yīng)用程序.ppt
《Windows窗體應(yīng)用程序.ppt》由會(huì)員分享,可在線閱讀,更多相關(guān)《Windows窗體應(yīng)用程序.ppt(25頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
第6章Windows窗體應(yīng)用程序,,6.1.1窗體應(yīng)用程序的創(chuàng)建、組成和運(yùn)行,本小節(jié)通過(guò)一個(gè)實(shí)例講解Windows窗體應(yīng)用程序的創(chuàng)建過(guò)程?!?.cs】是窗體對(duì)應(yīng)的代碼文件,與窗體及控件有關(guān)的事件、方法等代碼都可以寫(xiě)在這個(gè)文件中或者在這個(gè)文件中調(diào)用。【*.Designer.cs】文件是與窗體和控件顯示有關(guān)的代碼文件,一般不要修改此文件,主要包含InitializeComponent()方法?!綪rogram.cs】中包含程序的入口函數(shù)Main()主函數(shù)。,6.1.2屬性、事件和方法,Form窗體和控件提供了大量的屬性用來(lái)修改改觀。比如Name屬性用來(lái)修改控件名稱,Text屬性用來(lái)修改顯示控件上顯示的文字等。事件是面向?qū)ο缶幊讨械囊粋€(gè)重要概念。通俗地理解,事件指在某個(gè)對(duì)象內(nèi)部發(fā)生了某些事情,而其它對(duì)象可以引發(fā)這些事情的發(fā)生。比如,當(dāng)用鼠標(biāo)單擊窗體,則可以引發(fā)窗體發(fā)生一些事情,在VS2008中,叫做窗體的Click事件。,6.2.1控件常用屬性和事件,1.控件常用屬性Windows應(yīng)用程序中所有控件都會(huì)有共同常用的屬性:Name就是這個(gè)控件的名字.Text就是這個(gè)控件上顯示的信息。當(dāng)Visible屬性為T(mén)rue表示這個(gè)控件在程序運(yùn)行時(shí)顯示出來(lái),否則為False則表示程序運(yùn)行時(shí)該控件不顯示。當(dāng)Enabled屬性為T(mén)rue表示這個(gè)控件可用,否則該控件為灰色,不能使用。,6.2.1控件常用屬性和事件,2.控件的事件Click:在單擊控件時(shí)引發(fā)。在某些情況下,這個(gè)事件也會(huì)在用戶按下回車鍵時(shí)引發(fā)。DoubleClick:在雙擊控件時(shí)引發(fā)。處理某些控件上的Click事件,如Button控件,表示永遠(yuǎn)不會(huì)調(diào)用DoubleClick事件。DragDrop:在完成拖放操作時(shí)引發(fā)。換言之,當(dāng)一個(gè)對(duì)象被拖到控件上,然后用戶釋放鼠標(biāo)按鈕后,引發(fā)該事件。DragEnter:在被拖動(dòng)的對(duì)象進(jìn)入控件的邊界時(shí)引發(fā)。DragLeave:在被拖動(dòng)的對(duì)象移出控件的邊界時(shí)引發(fā)。DragOver:在被拖動(dòng)的對(duì)象放在控件上時(shí)引發(fā)。KeyDown:當(dāng)控件有焦點(diǎn)時(shí),按下一個(gè)鍵時(shí)引發(fā)該事件,這個(gè)事件總是在KeyPress和KeyUp之前引發(fā)。KeyPress:當(dāng)控件有焦點(diǎn)時(shí),按下一個(gè)鍵時(shí)發(fā)生該事件,這個(gè)事件總是在KeyDown之后、KeyUp之前引發(fā)。KeyDown和KeyPress的區(qū)別是KeyDown傳送被按下的鍵的鍵盤(pán)碼,而KeyPress傳送被按下的鍵的char值。,6.2.1控件常用屬性和事件,2.控件的事件KeyUp:當(dāng)控件有焦點(diǎn)時(shí),釋放一個(gè)鍵時(shí)發(fā)生該事件,這個(gè)事件總是在KeyDown和KeyPress之后引發(fā)。MouseDown:在鼠標(biāo)指針指向一個(gè)控件,且鼠標(biāo)按鈕被按下時(shí)引發(fā)。這與Click事件不同,因?yàn)樵诎粹o被按下之后,且未被釋放之前引發(fā)MouseDown。MouseMove:在鼠標(biāo)滑過(guò)控件時(shí)引發(fā)。MouseUp:在鼠標(biāo)指針位于控件上,且鼠標(biāo)按鈕被釋放時(shí)引發(fā)。Paint:繪制控件時(shí)引發(fā)。Validated:當(dāng)控件的CausesValidation屬性設(shè)置為true,且該控件獲得焦點(diǎn)時(shí),引發(fā)該事件。它在Validating事件之后發(fā)生,表示有效性驗(yàn)證已經(jīng)完成。Validating:當(dāng)控件的CausesValidation屬性設(shè)置為true,且該控件獲得焦點(diǎn)時(shí),引發(fā)該事件。,6.2.1控件常用屬性和事件,添加事件處理程序有2種基本方式:第一種是雙擊控件,進(jìn)入控件默認(rèn)事件的處理程序。這個(gè)事件對(duì)于不同的控件來(lái)說(shuō)是不同的。如果該事件就是我們需要的事件,就可以開(kāi)始編寫(xiě)代碼。如果需要的事件與默認(rèn)事件不同,則使用第二種方法來(lái)處理這種情況。另一種方法是使用Properties窗口(屬性窗口)中的Events列表,單擊Properties窗口的閃電圖標(biāo)按鈕,就會(huì)顯示Events列表。其中灰顯的事件就是控件的默認(rèn)事件。要給事件添加處理程序,只需在Events列表中雙擊該事件,就會(huì)生成給控件訂閱該事件的代碼,以及處理該事件的方法簽名。,6.2.2控件的錨定和???控件的錨定和停靠是通過(guò)Anchor和Dock屬性實(shí)現(xiàn)的。Anchor屬性用于指定在用戶重新設(shè)置窗口的大小時(shí)控件該如何響應(yīng)。可以指定如果控件重新設(shè)置了大小,就根據(jù)控件的邊界鎖定它,或者其大小不變,但根據(jù)窗口的邊界來(lái)錨定它的位置。Dock屬性用于指定控件應(yīng)停放在容器的邊框上。如果用戶重新設(shè)置了窗口的大小,該控件將繼續(xù)停放在窗口的邊框上。例如,如果指定控件停放在容器的底部邊界上,則無(wú)論窗口的大小如何改變,該控件都將改變大小,或移動(dòng)其位置,確保總是位于屏幕的底部。,6.3.1標(biāo)簽控件,Label是標(biāo)準(zhǔn)的Windows標(biāo)簽。LinkLabel類似于標(biāo)準(zhǔn)標(biāo)簽,但以Internet鏈接的方式顯示(即超鏈接形式)。,6.3.2文本框控件,文本框的主要用途是讓用戶輸入文本,用戶可以輸入任何字符,也可以限制用戶只輸入數(shù)值。.NETFramework內(nèi)置了兩個(gè)基本控件來(lái)提取用戶輸入的文本:TextBox和RichTextBox。這兩個(gè)控件都派生于基類TextBoxBase。,6.3.3單選控件,RadioButton又稱單選按鈕,其在工具箱中的圖標(biāo)為,單選按鈕通常成組出現(xiàn),用于提供兩個(gè)或多個(gè)互斥選項(xiàng),即在一組單選鈕中只能選擇一個(gè)。,6.3.4復(fù)選框控件,CheckBox是復(fù)選框控件,使用非常普遍。CheckedListBox控件又稱復(fù)選列表框。,6.3.5列表控件,列表框用于顯示一組字符串,可以一次從中選擇一個(gè)或多個(gè)選項(xiàng)。如果在設(shè)計(jì)期間,不知道用戶要選擇的數(shù)值個(gè)數(shù),或者列表中的值非常多,都應(yīng)考慮使用列表框。組合框是組成Windows窗口常見(jiàn)的控件之一,Windows程序員在應(yīng)用軟件開(kāi)發(fā)中經(jīng)常要用到組合框。ComboBox控件用于在下拉組合框中顯示數(shù)據(jù)。,6.3.6日期時(shí)間選擇控件,如果希望應(yīng)用程序可以選擇日期和時(shí)間,可使用DataTimePicker控件。DataTimePicker控件用于選擇日期和時(shí)間,但只能夠選擇一個(gè)時(shí)間段。,6.4.1分組控件,GroupBox控件常常用于邏輯地組合一組控件,如RadioButton及CheckBox控件。GroupBox控件又稱為分組框。GroupBox控件會(huì)顯示一個(gè)框架,可以通過(guò)它的Text屬性為其設(shè)置標(biāo)題。,6.4.2面板控件,Panel是一個(gè)容器控件,基本上不會(huì)用它本身的事件或者方法。一般是用Panel控件統(tǒng)一管理幾個(gè)其它非容器類控件,比如想在一個(gè)窗體里布置兩個(gè)不同的界面,通過(guò)點(diǎn)擊不同按鈕切換這兩個(gè)界面,或者在某些條件不成立時(shí)要把窗體中的某些控件隱藏,這時(shí)候就可以選擇Panel控件。,6.4.3選項(xiàng)卡控件,選項(xiàng)卡控件(TabControl)用于創(chuàng)建帶有多個(gè)選項(xiàng)卡頁(yè)(TabPage,或稱標(biāo)簽頁(yè))的窗口,每個(gè)選項(xiàng)卡都相當(dāng)于一個(gè)對(duì)話窗口容器,可以在其中獨(dú)立的存放其它控件對(duì)象。當(dāng)窗口功能復(fù)雜、控件很多時(shí),使用TabControl將其按功能進(jìn)行分類非常方便。,6.4.4面板復(fù)合控件,SplitContainer控件表示一個(gè)由可移動(dòng)條組成的控件,SplitContainer控件把3個(gè)控件組合在一起,其中有兩個(gè)面板控件,在它們之間有一個(gè)拆分器(即分隔欄)。該可移動(dòng)分隔欄將容器的顯示區(qū)域分成兩個(gè)大小可調(diào)的面板。在重新設(shè)置面板的大小時(shí),面板上的控件也可以重新設(shè)置大小。用戶在分隔欄上移動(dòng)鼠標(biāo)時(shí),光標(biāo)就會(huì)改變,此時(shí)可以移動(dòng)分隔欄。SplitContainer可以包含任意控件,包括布局面板和其他SplitContainer。,6.5.1菜單控件,基本上每一個(gè)應(yīng)用程序,不管是基于對(duì)話框、單文檔還是多文檔應(yīng)用程序,都需要菜單,它是用戶與應(yīng)用程序交互的重要載體。在VisualStudio2008中,菜單的制作已經(jīng)變得非常容易。可以使用工具箱中的兩個(gè)菜單制作控件,方便地設(shè)計(jì)出具有個(gè)性化的Windows菜單。這個(gè)控件是MenuStrip。,6.5.2快捷菜單控件,快捷菜單又叫上下文菜單,就是單擊右鍵時(shí)彈出的菜單。當(dāng)右鍵單擊某個(gè)關(guān)聯(lián)的控件時(shí),便彈出其快捷菜單,所以需要將快捷菜單與相關(guān)的控件進(jìn)行關(guān)聯(lián)。,6.5.3狀態(tài)欄控件,StatusStrip控件主要出現(xiàn)在當(dāng)前Window窗體的底部,一般使用文本和圖像向用戶顯示應(yīng)用程序當(dāng)前狀態(tài)的信息。該控件位于“菜單和工具欄”區(qū)域。,6.5.4工具欄控件,ToolStrip是MenuStrip、ContextMenuStrip和StatusStrip的基類。,6.6對(duì)話框控件,打開(kāi)文件對(duì)話框控件保存文件對(duì)話框控件字體對(duì)話框顏色對(duì)話框控件,6.7.1列表視圖控件,列表視圖通常用于顯示數(shù)據(jù),用戶可以對(duì)這些數(shù)據(jù)和顯示方式進(jìn)行某些控制。還可以把包含在控件中的數(shù)據(jù)顯示為列和行(像網(wǎng)格那樣),或者顯示為一列,或者顯示為圖標(biāo)表示。,6.7.2樹(shù)視圖控件,樹(shù)視圖控件(TreeView)用于組織有層次關(guān)系的數(shù)據(jù)。Window的資源管理器的左側(cè)窗口中就有一個(gè)用于顯示目錄的樹(shù)視圖控件組成的。,- 1.請(qǐng)仔細(xì)閱讀文檔,確保文檔完整性,對(duì)于不預(yù)覽、不比對(duì)內(nèi)容而直接下載帶來(lái)的問(wèn)題本站不予受理。
- 2.下載的文檔,不會(huì)出現(xiàn)我們的網(wǎng)址水印。
- 3、該文檔所得收入(下載+內(nèi)容+預(yù)覽)歸上傳者、原創(chuàng)作者;如果您是本文檔原作者,請(qǐng)點(diǎn)此認(rèn)領(lǐng)!既往收益都?xì)w您。
下載文檔到電腦,查找使用更方便
9.9 積分
下載 |
- 配套講稿:
如PPT文件的首頁(yè)顯示word圖標(biāo),表示該P(yáng)PT已包含配套word講稿。雙擊word圖標(biāo)可打開(kāi)word文檔。
- 特殊限制:
部分文檔作品中含有的國(guó)旗、國(guó)徽等圖片,僅作為作品整體效果示例展示,禁止商用。設(shè)計(jì)者僅對(duì)作品中獨(dú)創(chuàng)性部分享有著作權(quán)。
- 關(guān) 鍵 詞:
- Windows 窗體 應(yīng)用程序
鏈接地址:http://kudomayuko.com/p-11498161.html