版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、第四章菜單、工具欄、狀態(tài)欄主文檔及單文檔界面回顧何為DataGridView?DataGridView的什么屬性用于綁定數(shù)據(jù)源?DataGridView用于綁定的數(shù)據(jù)源有幾種類型?DataGridView綁定方法?DataGridView的Update() 方法作用?目標(biāo)了解 MDI 應(yīng)用程序和 SDI 應(yīng)用程序了解菜單和掌握菜單控件的使用掌握 ToolBar 控件和 StatusBar 控件演示應(yīng)用程序示例單文檔和多文檔 2-1這是 Ann 的一個(gè)測(cè)試如已有一個(gè)文本文件打開(kāi),在同一記事本應(yīng)用程序中,不允許創(chuàng)建第二個(gè)文本文件新建一個(gè)記事本實(shí)例來(lái)打開(kāi)第二個(gè)文本文件在SDI應(yīng)用程序中一次只能打開(kāi)一
2、個(gè)文件單文檔和多文檔 2-2在 MDI 應(yīng)用程序中可以同時(shí)打開(kāi)多個(gè)文件 應(yīng)用程序窗口文檔窗口主窗體和子窗體 3-1父窗體子窗體子窗體的菜單并入父窗體中主窗體和子窗體 3-2主窗體的特點(diǎn): 啟動(dòng)一個(gè) MDI 應(yīng)用程序時(shí),首先顯示父窗體 它是應(yīng)用程序中所有其他窗口的容器 每個(gè)應(yīng)用程序界面都只能有一個(gè) MDI 父窗體 在任何指定的時(shí)間都可以打開(kāi)多個(gè)子窗體 任何 MDI 子窗體都不能移出 MDI 框架區(qū)域 關(guān)閉 MDI 父窗體則自動(dòng)關(guān)閉所有打開(kāi)的 MDI 子窗體主窗體和子窗體 3-3屬性說(shuō)明MdiChildren 用于獲取表示多文檔界面 (MDI) 子窗體的窗體數(shù)組MdiParent 用于獲取或設(shè)置當(dāng)
3、前多文檔界面 (MDI) 父窗體 ActiveMdiChild 用于獲取當(dāng)前活動(dòng)的多文檔界面 (MDI) 子窗體 方法說(shuō)明ActivateMdiChild用于激活子窗體LayoutMdi排列 MDI 父窗體中的多文檔界面 (MDI) 子窗體事件說(shuō)明Closed由用戶或窗體的 Close 方法關(guān)閉窗體后,發(fā)生該事件Closing正在關(guān)閉窗體時(shí),發(fā)生該事件MdiChildActivate在 MDI 應(yīng)用程序中激活或關(guān)閉多文檔界面 (MDI) 子窗體時(shí),觸發(fā)該事件MDI 應(yīng)用程序的屬性、方法和事件如果窗體為 MDI 父窗體,則在觸發(fā) MDI 父窗體的 Closing 事件之前,將觸發(fā)所有 MDI 子
4、窗體的 Closing 事件。另外,在觸發(fā) MDI 父窗體的 Closed 事件之前,將觸發(fā)所有 MDI 子窗體的 Closed 事件創(chuàng)建 MDI 窗體 TestForm objChild = new TestForm();objChild.MdiParent = this;objChild.Show(); 創(chuàng)建 MDI 窗體步驟:將 IsMdiContainer 屬性設(shè)置為 True選擇“項(xiàng)目”“添加 Windows 窗體”添加給定的代碼,將 TestForm 設(shè)置為子窗體MDI 父窗體Closing 事件的調(diào)用順序:MDI 子窗體激活和去激活窗口顯示活動(dòng)窗口this.ActivateMdi
5、Child(frmChild);激活窗口MessageBox.Show(Convert.ToString(this.ActiveMdiChild);顯示活動(dòng)窗口的名稱活動(dòng)窗口排列子窗口MDILayout 枚舉的成員成員名稱說(shuō)明ArrangeIcons在 MDI 父窗體的客戶端區(qū)內(nèi)排列所有 MDI 子窗體的圖標(biāo)Cascade在 MDI 父窗體的客戶端區(qū)內(nèi)層疊所有 MDI 子窗口TileHorizontal 在 MDI 父窗體的客戶端區(qū)內(nèi)水平平鋪所有 MDI 子窗口TileVertical在 MDI 父窗體的客戶端區(qū)內(nèi)垂直平鋪所有 MDI 子窗口菜單和菜單組件菜單提供了將命令分組的一致方法用戶易于
6、訪問(wèn)支持使用訪問(wèn)鍵啟用鍵盤快捷方式一個(gè)菜單可以帶有若干子菜單菜單是程序中顯示一個(gè)選項(xiàng)列表的圖形元素在設(shè)計(jì)階段將 MenuStrip 組件添加到窗體上菜單類型上下文菜單MenuStrip 控件包含多個(gè) MenuItem 控件MenuStrip 類位于 System.Windows.Forms 命名空間菜單類型 屬性方法方法說(shuō)明GetMainMenu 檢索包含指定菜單的主菜單的名稱,如果此菜單不在 菜單內(nèi),則該屬性返回 null 引用 MergeMenu 將指定菜單的菜單項(xiàng)合并到當(dāng)前活動(dòng)的菜單中屬性說(shuō)明MdiListItem 表示菜單項(xiàng),它列出 MDI 窗體的子窗體Items 檢索屬于指定菜單的菜
7、單項(xiàng)集合方法說(shuō)明GetContextMenu檢索包含指定菜單的上下文菜單的名稱,默認(rèn)值為 null 引用 GetForm 檢索包含指定菜單控件的窗體的名稱菜單類型MenuStrip MainMenu = new MenuStrip(); ToolStripMenuItem item1 = new ToolStripMenuItem(); item1.Text = 子窗口1; MainMenu.Items.Add(item1);創(chuàng)建一個(gè)菜單和菜單項(xiàng),并將菜單項(xiàng)添加到主菜單上屬性說(shuō)明Checked是否在指定菜單項(xiàng)的文本旁邊顯示復(fù)選標(biāo)記,如果此屬性設(shè)置為 True,則會(huì)在指定的菜單項(xiàng)旁邊顯示復(fù)選標(biāo)記
8、,默認(rèn)值為 False MergeAction獲取或設(shè)置如何將子菜單與父菜單合并MergeIndex獲取或設(shè)置合并的項(xiàng)在當(dāng)前 ToolStrip 內(nèi)的位置Text菜單項(xiàng)顯示的文本信息ToolStripMenuItem 的屬性、方法和事件方法說(shuō)明PerformClick觸發(fā)菜單項(xiàng)的 Click 事件,而不需要用戶實(shí)際上單擊此菜單項(xiàng) 事件說(shuō)明Click按下為菜單項(xiàng)指定的快捷鍵或訪問(wèn)鍵,或者用鼠標(biāo)單擊菜單項(xiàng)時(shí),將觸發(fā)該事件 菜單類型 3-3上下文菜單快捷菜單:?jiǎn)螕羰髽?biāo)右鍵時(shí)顯示的快捷菜單;菜單會(huì)因用戶右鍵單擊位置的不同而不同ContextMenuStrip 的屬性、方法和事件屬性說(shuō)明SourceCo
9、ntrol用于獲取正在顯示快捷菜單的控件方法說(shuō)明Show在指定位置顯示快捷菜單EventsDescriptionPopup在顯示可快捷菜單前觸發(fā)該事件在運(yùn)行時(shí)創(chuàng)建上下文菜單:ContextMenuStrip mnuContextMenu1 = new ContextMenuStrip(); this.ContextMenuStrip = mnuContextMenu1;在運(yùn)行時(shí)添加/移除菜單項(xiàng) 2-1 MainMenu mnuMainMenu1 = new MainMenu();MenuItem mnuAddItem = new MenuItem();MenuItem mnuRemoveIte
10、m = new MenuItem();mnuAddItem.Text = “添加(&A);mnuRemoveItem.Text = “移除(&R);mnuMainMenu1.MenuItems.Add(mnuAddItem);mnuMainMenu1.MenuItems.Add(mnuRemoveItem);this.Menu = mnuMainMenu1;DialogResult preference = new DialogResult();preference = MessageBox.Show(“是否要添加新菜單項(xiàng)?”,“添加, MessageBoxButtons.YesNo);添加鍵
11、盤快捷方式助記符 添加菜單項(xiàng)添加菜單項(xiàng)在運(yùn)行時(shí)添加/移除菜單項(xiàng) 2-2if(Convert.ToString(preference) = “是)mnuMainMenu1.MenuItems.Add(“新菜單);DialogResult preference1 = new DialogResult();preference1 = MessageBox.Show(“是否要移除新菜單項(xiàng)?”, “移除,MessageBoxButtons.YesNo);if(Convert.ToString(preference1) = “是) mnuMainMenu1.MenuItems.RemoveAt(2);添加
12、菜單項(xiàng)移除第三個(gè)位置上的菜單項(xiàng)兩個(gè)類ToolStripToolStripButtonToolStrip 控件屬性說(shuō)明ImageIndex 為工具欄按鈕指定的圖像在圖像列表中的索引值 Style 工具欄按鈕的樣式,其中包括 DropDownButton(下拉按鈕)、Separator(分隔符) 和 ToggleButton(切換按鈕) ToolTipText表示工具欄按鈕的工具提示文本ToolStripButton 類的屬性和事件屬性說(shuō)明Items 工具欄按鈕控件的集合 ShowToolTips鼠標(biāo)移到各工具欄按鈕上時(shí),是否顯示相應(yīng)的工具提示,如果該屬性的值設(shè)置為 True,則顯示工具提示 事件
13、說(shuō)明ButtonClick 單擊工具欄按鈕時(shí),將觸發(fā)該事件ToolStrip 類的屬性和事件工具欄 示例創(chuàng)建名為 Example 1 的 Windows 應(yīng)用程序。將 Form1.cs 更改為 frmToolBarExample.cs。將 ToolBar 控件拖動(dòng)到窗體上,并將它命名為 tbrToolBar。選擇 Buttons 屬性,并單擊按鈕以顯示“ToolBarButton 集合編輯器”窗口。添加三個(gè)按鈕。添加了三個(gè)按鈕輸出屏幕private void tbrToolBar_ButtonClick(object sender, System.Windows.Forms.ToolBarBu
14、ttonClickEventArgs e)if(e.Button = this.tbrToolBar.Buttons0)MessageBox.Show(“已單擊 “打開(kāi)”按鈕);處理 ButtonClick 事件的代碼 StatusBar 控件兩個(gè)類StatusBarPanelStatusBarToolStatusStrip 類的屬性屬性說(shuō)明Items表示 StatusBar 控件的所有面板 ShowItemsToolTips用于指定是否顯示項(xiàng)的ToolTip屬性說(shuō)明Text用于獲取或設(shè)置狀態(tài)欄面板的文本ToolTipText用于獲取或設(shè)置與狀態(tài)欄面板關(guān)聯(lián)的工具提示文本StatusStrip
15、類的屬性在狀態(tài)欄 的第二個(gè)面板上顯示當(dāng)前日期的代碼toolStripStatusLabel1.Text = DateTime.Now.ToShortDateString();.創(chuàng)建名為 BookManagement的 Windows 應(yīng)用程序。將名稱 Form1.cs 更改為 frmMdiApplication.cs。將 Menu、StatusBar 、ToolBar和 ImageList 控件拖動(dòng)到窗體上。 應(yīng)用程序示例 4-1由菜單、工具欄和狀態(tài)欄組成的應(yīng)用程序演示:創(chuàng)建 Windows 應(yīng)用程序示例的步驟控件屬性FormName: frmMdiApplicationText: 圖書管理系
16、統(tǒng)Menu: mnuBookManageIsMdiContainer: True MenuName: mnuBookManageMenuItemName: mnuEnterStoreText: 新書入庫(kù)(&N) MenuItemName: mnuSearchBookText: 查詢書目(&S) MenuItemName: mnuConManageText: 菜單管理(&M) MenuItemMenuItemName: mnuExitText: 退出系統(tǒng)(&E)MenuItemName:mnuEnginerrBookText:工程類圖書MenuItemName:mnuForeignBookTex
17、t:外文類圖書MenuItemName:mnuChineseBookText:中文類圖書ToolBarName: tbrBookBarStatusBarName: sbrBookStatus設(shè)置窗體上控件的屬性應(yīng)用程序示例 4-2演示:創(chuàng)建 Windows 應(yīng)用程序示例的步驟選擇 ToolBar 控件,單擊 ToolBar 控件的 Buttons 屬性,此時(shí)會(huì)出現(xiàn)“ToolBarButton 集合編輯器”窗口,向其中添加3個(gè)按鈕,并分別命名為 trbNewBooks 、trbBookSearch和trbExit。分別在Text屬性處輸入入庫(kù)、查詢和退出 單擊“確定”以繼續(xù)應(yīng)用程序示例 4-3選
18、擇 StatusBar 控件,并將 ShowPanels 屬性設(shè)置為 True選擇 Panels 屬性,并添加兩個(gè)面板,命名為 sbrTimeBar 和sbrNameBar 單擊“確定”以繼續(xù)創(chuàng)建新窗體,命名為frmNewBooks.cs,當(dāng)鼠標(biāo)單擊“工程類圖書”菜單選項(xiàng)時(shí)彈出此窗體將以下代碼添加到 frmMdiForm 的 Load 事件中private void frmMdiForm_Load(object sender, System.EventArgs e)this.sbrBookStatus.Panels0.Text = DateTime.Now.ToShortDateString(
19、);在 mnuEnginerrBook菜單項(xiàng)的 Click 事件中添加代碼 private void mnuEnginerrBook_Click(object sender, System.EventArgs e)frmNewBooks newBooks=new frmNewBooks();newBooks.MdiParent=this;newBooks.WindowState=FormWindowState.Maximized;newBooks.Show();this.sbrBookStatus.Panels1.Text=this.ActiveMdiChild. Text.ToString(
20、); 將以下代碼添加到 mnuConManage “菜單管理”的 Click 事件中private void mnuConManage_Click(object sender, System.EventArgs e)ContextMenu mnuContextMenu = new ContextMenu();this.ContextMenu = mnuContextMenu;mnuContextMenu.MenuItems.Add(新書入庫(kù));mnuContextMenu.MenuItems.Add(查詢書目);mnuContextMenu.MenuItems.Add(退出系統(tǒng));應(yīng)用程序示例 4-4將以下代碼添加到 mn
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 訴訟代理與庭審辯護(hù)工作總結(jié)
- 幼兒捉迷藏課程設(shè)計(jì)
- 英雄之旅課程設(shè)計(jì)理念
- 酒店行業(yè)銷售工作總結(jié)
- IT行業(yè)員工薪酬福利制度優(yōu)化
- 2025年高考?xì)v史一輪復(fù)習(xí)之世界多極化
- 如何將愿景轉(zhuǎn)化為年度工作計(jì)劃
- 2023-2024學(xué)年福建省福州市福清市高一(下)期中語(yǔ)文試卷
- 漢字偏旁部首名稱大全表
- 文化行業(yè)市場(chǎng)拓展總結(jié)
- 2025年林權(quán)抵押合同范本
- 智能檢測(cè)與監(jiān)測(cè)技術(shù)-智能建造技術(shù)專02課件講解
- 2025蛇年一年級(jí)寒假作業(yè)創(chuàng)意與寓意齊【高清可打印】
- 多系統(tǒng)萎縮鑒別及治療
- 設(shè)備的使用和維護(hù)管理制度模版(3篇)
- 浙江省寧波市慈溪市2023-2024學(xué)年高三上學(xué)期語(yǔ)文期末測(cè)試試卷
- 麻風(fēng)病防治知識(shí)課件
- 痛風(fēng)護(hù)理疑難病例討論
- 木材材積表0.1-10米.xls
- 輕質(zhì)隔墻板安裝合同協(xié)議書范本標(biāo)準(zhǔn)版
- 車輛管理各崗位績(jī)效考核量表
評(píng)論
0/150
提交評(píng)論