winform界面特效設計源碼

上傳人:1666****666 文檔編號:37492338 上傳時間:2021-11-03 格式:DOC 頁數:222 大小:2.90MB
收藏 版權申訴 舉報 下載
winform界面特效設計源碼_第1頁
第1頁 / 共222頁
winform界面特效設計源碼_第2頁
第2頁 / 共222頁
winform界面特效設計源碼_第3頁
第3頁 / 共222頁

下載文檔到電腦,查找使用更方便

0 積分

下載資源

還剩頁未讀,繼續(xù)閱讀

資源描述:

《winform界面特效設計源碼》由會員分享,可在線閱讀,更多相關《winform界面特效設計源碼(222頁珍藏版)》請在裝配圖網上搜索。

1、winform 界面特效設計源碼 窗體與界面設計 9 實例001 帶歷史信息的菜單 10 實例002 菜單動態(tài)合并 12 實例003 像開始菜單一樣漂亮的菜單 14 實例004 任務欄托盤菜單 15 實例005 可以拉伸的菜單界面 16 實例006 菜級聯(lián)菜單 18 1.2 工具欄設計 19 實例007 帶帶背景的工具欄 19 實例008 帶浮動工具欄 20 實例009 在帶下拉菜單的工具欄 21 實例010 在具有提示功能的工具欄 22 實例011 在狀態(tài)欄中顯示檢查框 23 實例012 帶進度條的狀態(tài)欄 25 實例013 狀態(tài)欄中加入圖標 26 實例014

2、OutLook界面 27 實例015 帶帶導航菜單的主界面 29 實例016 圖形化的導航界面 32 實例017 菜類QQ的程序界面 35 實例018 類似windows xp的程序界面 38 實例019 以圖形按鈕顯示的界面 42 實例020 以樹形顯示的程序界面 44 實例021 動態(tài)按鈕的窗體界面 46 實例022 非矩形窗體 50 實例023 建立字體形狀窗體 52 實例024 控件隨窗體自動調整 54 實例025 帶分隔欄的窗體 55 實例026 隨機更換主界面背景 56 實例027 自動啟動的多媒體光盤程序 57 實例028 為觸摸屏程序添加虛擬鍵盤 5

3、9 實例029 半透明漸顯窗體 61 實例030 窗口顏色的漸變 63 實例031 窗體中的滾動字幕 65 實例032 動畫顯示窗體 67 實例033 制作閃爍的窗體 69 實例034 直接在窗體上繪圖 70 實例035 動畫形式的程序界面 73 實例036 使窗體標題欄文字右對齊 75 實例037 沒有標題欄可義改變大小的窗口 76 實例038 設置窗體在屏幕中的位置 77 實例039 始終在最上面的窗體 78 實例040 限制窗體大小 79 實例041 獲取桌面大小 81 實例042 在窗口間移動按扭 82 實例043 如何實現(xiàn)Office助手 84 實例0

4、44 在關閉窗口前加入確認對話框 85 實例045 使用任意組件拖動窗體 88 實例046 修改提示字體及顏色 89 實例047 如何為MDI類型窗體設置背景圖片 91 實例048 向提示框中添加圖標 93 實例418 通過串口發(fā)送數據 95 實例419 通過串口關閉對方計算機 98 實例420 密碼寫入與讀出加密狗 101 實例421 使用加密狗進行身份驗證 105 實例422 向IC卡中寫入數據 107 實例423 讀取IC卡中的數據 113 實例424 利用IC卡制作考勤程序 116 實例425 簡易視頻程序 119 實例426 攝像頭監(jiān)控錄像 125 實例4

5、27 超市攝像頭定時監(jiān)控系統(tǒng) 127 實例428 語音卡電話呼叫系統(tǒng) 132 實例429 客戶來電查詢系統(tǒng) 141 實例430 語音卡實現(xiàn)電話錄音 144 實例431 利用短信貓收發(fā)短信息 147 實例432 利用短信遠程關閉計算機 155 實例433 短信息采集煙草銷售數據 159 實例434 “春晚”節(jié)目評比短信息互動平臺 164 實例435 條形碼掃描器銷售商品 167 實例436 利用神龍卡制作練歌房程序 169 實例463 數據加密技術 174 實例464 文本文件加密與解密 177 實例465 利用圖片加密文件 188 實例466 如何編程修復Access

6、數據庫 194 實例467 訪問帶驗證模式的Sqlserver 2000數據庫 197 實例468 利用INI文件對軟件進行注冊 201 實例469 利用注冊表設計軟件注冊程序 204 實例470 利用網卡序列號設計軟件注冊程序 208 實例471 根據cpu序列號、磁盤序列號設計軟件注冊程序 214 窗體與界面設計 1.1 菜單應用實例 菜單是程序開發(fā)中經常使用的界面元素,合理利用菜單不但可以使用戶非常方便的操作程序的功能,更能使效率提高,適應人性化的潮流。下面通過幾個應用實例,介紹菜單設計的方法和技術。

7、實例001 帶歷史信息的菜單 實例說明 在開發(fā)圖紙管理軟件時,要求在菜單上記錄用戶最近打開的檔案或圖紙,以方便下次使用。如圖1.1所示,單擊“文件”菜單下的“打開文件”子菜單,打開需要查閱的圖紙。下次運行該軟件時,上次打開的文件名記錄到“文件”菜單的歷史菜單中,選擇該菜單,即可打開相應的圖紙文件。 技術要點 要實現(xiàn)保存最近打開的文件,可以將在菜單中最近打開文件的文件名和路徑保存到事先建立的*.ini文件中,系統(tǒng)啟動時讀取*.ini中的數據建立數組菜單,即可實現(xiàn)顯示歷史菜單的功能。 注意:要建立一個帶歷史信息的菜單,必須首先添加一個MenuStrip菜單控件,并將主窗體的IsMdiCo

8、ntainer屬性設為True。 實現(xiàn)過程 (1)創(chuàng)建一個項目,將其命名為Ex01_01,默認窗體為Form1。 (2)從工具箱中向Form1窗體添加MenuStrip控件,同時向窗體添加OpenFileDialog控件。創(chuàng)建一個“文件”主菜單,在其下面創(chuàng)建打開、關閉所有、退出等菜單選項。 (3)主要程序代碼。 將打開文件路徑寫入INI文件的實現(xiàn)代碼如下: private void 打開ToolStripMenuItem_Click(object sender, EventArgs e) { openFileDialog1.FileName = ""; this.op

9、enFileDialog1.ShowDialog(); StreamWriter s = new StreamWriter(address + "\\Menu.ini", true); s.WriteLine(openFileDialog1.FileName);//寫入INI文件 s.Flush(); s.Close(); ShowWindows(openFileDialog1.FileName); } 讀取INI文件并將信息加入菜單的實現(xiàn)代碼如下: private void Form1_Load(object sender, EventArgs e) {

10、 StreamReader sr = new StreamReader(address + "\\Menu.ini"); int i = this.文件ToolStripMenuItem.DropDownItems.Count-2; while (sr.Peek()>=0)//讀取INI文件 { ToolStripMenuItem menuitem = new ToolStripMenuItem(sr.ReadLine()); this.文件ToolStripMenuItem.DropDownItems.Insert(i, menuitem); i++; menui

11、tem.Click += new EventHandler(menuitem_Click); } sr.Close(); } 自定義方法ShowWindows()用來加載背景圖片并顯示窗體,實現(xiàn)代碼如下: public void ShowWindows(string fileName) { Image p = Image.FromFile(fileName); Form f = new Form(); f.MdiParent = this; f.BackgroundImage = p; f.Show(); } 舉一反三 根據本實例,讀者可以開發(fā)

12、以下程序。 記錄用戶操作菜單日志的程序。在用戶單擊菜單時,把用戶、菜單命令和菜單對應功能寫入保存菜單日志的INI文件。如果需要查看日志,只需打開INI文件。 通過數據庫保存菜單歷史信息的程序。 菜單使用頻率的程序。把用戶使用菜單的數據信息保存到數據庫中,然后統(tǒng)計用戶使用菜單的頻率,并根據此頻率調整菜單的顯示順序。 實例002 菜單動態(tài)合并 實例說明 在程序中經常使用彈出菜單,并且一個窗體中可以存在多個彈出菜單。開發(fā)過MDI窗體的讀者可能都知道,當MDI子窗體最大化時,子窗體和主窗體的菜單能夠自動的合并。這是如何實現(xiàn)的呢?本例實現(xiàn)了將兩個彈出菜單動態(tài)的合并成一個彈出菜單的功能。

13、實例效果如圖1.2所示。 技術要點 C#2.0中已經將彈出菜單封裝為Context MenuStrip控件,利用該控件中的Items對象可以操作菜單中的菜單項。該對象是ToolStripMenuItem類型,使用Items.AddRange( )方法可以向彈出菜單中添加菜單項,該方法原型如下。 public void AddRange ( ToolStripItem[] toolStripItems ) 參數說明如下。 l toolStripItems:控件的數組。 實現(xiàn)過程 (1)創(chuàng)建一個項目,將其命名為Ex01_02,默認窗體為Form1。 (2)從工具箱中向F

14、orm1窗體添加一個MenuStrip控件用來設計菜單;同時向窗體添加ContextMenuStrip控件用來設計右鍵菜單;選中MenuStrip控件創(chuàng)建一個“打開子窗體”主菜單,然后選中ContextMenuStrip控件為其添加子項。 (3)為程序添加一個窗體,默認名為Form2,同時向窗體添加ContextMenuStrip控件用來設計右鍵菜單,然后選中ContextMenuStrip控件為其添加子項。 (4)主要程序代碼。 private void 打開自窗體ToolStripMenuItem_Click(object sender, EventArgs e) { Fo

15、rm2 f = new Form2(); f.MdiParent = this; f.Show();//顯示子窗體 f.Resize += new EventHandler(f_Resize); } void f_Resize(object sender, EventArgs e) { Form2 f = (Form2)sender; ToolStripMenuItem item = new ToolStripMenuItem(); for (int i = 0; i < f.contextMenuStrip2.Items.Count; )//合并菜單

16、{ item.DropDownItems.Add(f.contextMenuStrip2.Items[i]); } this.contextMenuStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { item}); } 舉一反三 根據本實例,讀者可以實現(xiàn)以下功能。 讓右鍵菜單在子窗體中顯示。 讓右鍵菜單在主窗體和子窗體中同時顯示。 實例003 像開始菜單一樣漂亮的菜單 實例說明 Windows的開始菜單非常的獨特,在菜單的旁邊有一條豎著的彩條,彩條中還寫著文字。這種獨特的菜單能夠

17、使程序的界面看起來更加的漂亮。本例中就實現(xiàn)了這種菜單,運行本例彈出“打開菜單”時,就會看到菜單的左邊有一個紫色的彩條。實例效果如圖1.3所示。 技術要點 在C# 2.0中,MenuStrip控件中的子項ToolStripMenuItem已經包括了左側的彩條,實現(xiàn)像開始菜單一樣的菜單非常容易,不像在其他計算機語言的開發(fā)環(huán)境中,需要調用API才可以實現(xiàn)。如果想改變左側豎著的彩條,只要給對應的菜單項設置相應的圖片即可。 注意:如果要在左側彩條顯示文字,只要在對應的圖片上加入文字即可。 實現(xiàn)過程 (1)創(chuàng)建一個項目,將其命名為Ex01_03,默認窗體為Form1。 (2)從工具箱中向For

18、m1窗體添加MenuStrip控件。 (3)為MenuStrip控件添加相應的子項。 (4)為子項添加相應的圖片。 舉一反三 根據本實例,讀者可以實現(xiàn)以下功能。 將菜單元設置成不同的格式(如圖片、文字等)。 在菜單左側播放動畫。 實例004 任務欄托盤菜單 實例說明 有一些軟件通常只是在后臺運行,這些進程大部分時間不顯示用戶界面??赏ㄟ^單擊任務欄狀態(tài)通知區(qū)域的圖標來訪問的病毒防護程序就是一個示例。Windows窗體中的NotifyIcon控件通常用于顯示在后臺運行的進程的圖標,本實例利用該控件制作了一個任務欄托盤菜單。實例效果如圖1.4所示。 技術要點 要實現(xiàn)程序啟動

19、時出現(xiàn)在系統(tǒng)托盤中。必須要為窗體添加NotifyIcon 控件和ContextMenuStrip控件。 注意:必須為NotifyIcon 控件的Icon屬性設置圖標。 實現(xiàn)過程 (1)創(chuàng)建一個項目,將其命名為Ex01_04,默認窗體為Form1。 (2)向Form1窗體添加NotifyIcon 控件和ContextMenuStrip控件,并為ContextMenuStrip控件添加子項。 (3)選擇NotifyIcon 控件,在其屬性窗口中將ContextMenuStrip屬性設置為添加到窗體上的ContextMenuStrip控件,并為Icon屬性設置圖片。 舉一反三 根據本實

20、例,讀者可以開發(fā)以下程序。 程序啟動時不出現(xiàn)界面,直接出現(xiàn)在系統(tǒng)托盤中運行的后臺程序。 程序啟動時不出現(xiàn)在任務欄中。 實例005 可以拉伸的菜單界面 實例說明 如果管理程序功能菜單非常多,而用戶只使用一些常用菜單,這時,可以將主菜單項下的不常用菜單隱藏起來。此種顯示方式類似于對菜單進行拉伸。使用時,只需單擊展開菜單,即可顯示相應菜單功能。運行本例,效果如圖1.5所示。 技術要點 要實現(xiàn)可以拉伸的菜單,關鍵是要使用一個開關變量,同時調用ShowDropDown()方法,顯示操作后的結果。下面詳細介紹一下該方法。 ShowDropDown()方法用來顯示與此ToolStripD

21、rop DownItem關聯(lián)的ToolStripDropDownItem控件。其語法結構如下: public void ShowDropDown () 另外,用ShowDropDown()方法還可以顯示已由 DropDown 屬性設置的下拉控件。 注意:必須設置開關變量的初值。 實現(xiàn)過程 (1)創(chuàng)建一個項目,將其命名為Ex01_05,默認窗體為Form1。 (2)從工具箱中向Form1窗體添加MenuStrip控件,選中MenuStrip控件為其添加子項。 (3)雙擊“展開(關閉)子項”為其雙擊事件添加處理代碼。 (4)主要程序代碼。 private void Form1_

22、Load(object sender, EventArgs e) { //初始設置下面的菜單隱藏 this.設置密碼ToolStripMenuItem.Visible = false; this.添加用戶ToolStripMenuItem.Visible = false; this.忘記密碼ToolStripMenuItem.Visible = false; this.修改密碼ToolStripMenuItem.Visible = false; this.員工錄入ToolStripMenuItem.Visible = false; } private voi

23、d toolStripMenuItem1_Click(object sender, EventArgs e) { switch (i) { case 1: this.設置密碼ToolStripMenuItem.Visible = false; this.添加用戶ToolStripMenuItem.Visible = false; this.忘記密碼ToolStripMenuItem.Visible = false; this.修改密碼ToolStripMenuItem.Visible = false; this.員工錄入ToolStripMenuItem.V

24、isible = false; i = 2; this.操作ToolStripMenuItem.ShowDropDown(); break; case 2: this.設置密碼ToolStripMenuItem.Visible = true; this.添加用戶ToolStripMenuItem.Visible = true; this.忘記密碼ToolStripMenuItem.Visible = true; this.修改密碼ToolStripMenuItem.Visible = true; this.員工錄入ToolStripMenuItem.Visi

25、ble = true; i = 1; this.操作ToolStripMenuItem.ShowDropDown(); break; } } 舉一反三 根據本實例,讀者可以開發(fā)以下功能。 制作顯示\隱藏工具欄。 合并菜單欄。 實例006 菜級聯(lián)菜單 實例說明 如果管理程序功能菜單非常多,一些功能中又包括許多子功能,這時可以使用級聯(lián)菜單來組織系統(tǒng)的各個功能。實例運行結果如圖1.6所示。 圖1.6 級聯(lián)菜單 技術要點 制作級聯(lián)菜單需要使用MenuStrip控件。 注意:在使用級聯(lián)菜單時最好不要超過5層,否則用戶在使用時會很不方便。 實現(xiàn)過程 (

26、1)創(chuàng)建一個項目,將其命名為Ex01_06,默認窗體為Form1。 (2)在Form1窗體添加MenuStrip控件,選中MenuStrip控件為其添加子項和級聯(lián)子項。 舉一反三 根據本實例,讀者可以開發(fā)以下功能。 大型系統(tǒng)的功能導航。 在窗體四周再增加菜單欄。 1.2 工具欄設計 在菜單欄中將常用的菜單命令以工具欄按鈕的形式顯示,并作為快速訪問方式。工具欄位于菜單欄的下方,由許多命令按鈕組成,每個命令按鈕上都有一個形象的小圖標,以標識命令按鈕的功能。由于工具欄這種直觀易用的特點,使其已成為Windows應用程序的標準界面。 實例007 帶帶背景的工具欄 實例說明 工具

27、欄是窗體的組成部分之一,工具欄中的按鈕可以設定完成一些較為常用或重要的功能,本例中設計了一個工具欄,并且為該工具欄作了一些修飾,使工具欄帶有背景。背景圖案可以透過按鈕顯示,效果如圖1.7所示。 技術要點 工具欄中的背景是一幅圖片,在運行時應該將該圖片繪制到工具欄上,在.NET 2.0中,只需將工具欄按鈕的BackGroundImage的屬性設置為對應的圖片即可。 實現(xiàn)過程 (1)創(chuàng)建一個項目,將其命名為Ex01_07,默認窗體為Form1。 (2)從工具箱中為Form1窗體添加ToolStrip控件,并為工具欄添加相應的按鈕。 (3)為工具欄的按鈕設置相應的BackGroundIm

28、age屬性,相應的的圖片就會變成按鈕的背景。 舉一反三 根據本實例,讀者可以開發(fā)以下功能。 制作一個帶動畫效果的工具欄。 制作一個自定義樣式的工具欄。 實例008 帶浮動工具欄 實例說明 通常情況下,窗體顯示在屏幕的中心。對于使用頻率非常高的軟件,通常放在屏幕上端以浮動工具欄形式顯示。下面通過實例介紹浮動工具欄的設計方法。運行程序,程序可以停在屏幕的任何位置,當窗體失去焦點后,窗體將自動隱藏。效果如圖1.8所示。 技術要點 窗體是否要隱藏,重要的是要判斷在操作中,通過窗體的Focused屬性,是否可以確定窗體有焦點。在窗體有焦點時,該窗體正在被操作,這時需要完全顯示在屏幕

29、當中,如果窗體沒有焦點,通過設置窗體到屏幕的高度,來確定窗體的隱藏部分。下面詳細介紹一下Focused屬性。 Focused屬性用來獲取一個值,該值指示控件是否有輸入焦點。其語法結構如下: public virtual bool Focused { get; } l 屬性值:如果控件有焦點,則為True;否則為False。 實現(xiàn)過程 (1)創(chuàng)建一個項目,將其命名為Ex01_08,默認窗體為Form1。 (2)從工具箱中為Form1窗體添加Panel控件,并為Panel控件添加相應的背景圖片。 (3)在Panel上添加兩個Label控件,并將其Text屬性設置為“打開”和“關閉”

30、,同時把兩個Label控件的背景顏色設置為透明。 (4)主要程序代碼。 private void timer1_Tick(object sender, EventArgs e) { if (this.Focused == false) { this.Top = -30; } } private void label2_Click(object sender, EventArgs e) { this.Close(); } private void panel1_MouseClick(object sender, MouseEventArgs e)

31、 { this.Top = 60; } 舉一反三 根據本實例,讀者可以開發(fā)以下功能。 制作一個帶動畫效果的工具欄。 制作一個飄動的工具欄。 實例009 在帶下拉菜單的工具欄 實例說明 工具欄是窗體的組成部分之一,工具欄中的按鈕可以完成一些較為常用或重要的功能,本例中設計了一個工具欄,使工具欄帶有下拉菜單,效果如圖1.9所示。 技術要點 帶下拉菜單的工具欄在其他計算機語言中實現(xiàn)比較復雜,但在.NET 2.0中已經提供了這個功能,只需將工具欄按鈕的類型設置為DropDownButton即可。 實現(xiàn)過程 (1)創(chuàng)建一個項目,將其命名為Ex01_09,默認窗體為F

32、orm1。 (2)從工具箱中為窗體添加ToolStrip控件,并為工具欄添加相應的按鈕,在按鈕的下拉選項中選擇DropDownButton類型。 (3)為工具欄DropDownButton類型的按鈕設置相應的下拉菜單,就可以輕松實現(xiàn)帶下拉菜單的工具欄。 舉一反三 根據本實例,讀者可以開發(fā)以下功能。 制作一個帶右鍵菜單的工具欄。 制作一個帶復選框的工具欄。 實例010 在具有提示功能的工具欄 實例說明 在文檔\視圖結構的應用程序中,默認情況下,當鼠標在工具欄按鈕上停留片刻,會出現(xiàn)一個工具提示條。本例實現(xiàn)了一個具有提示功能的工具欄,效果如圖1.10所示。 技術要點 具有提

33、示功能的工具欄在其他計算機語言中實現(xiàn)也許比較復雜,但在.NET 2.0中已經提供了這個功能。只需將工具欄按鈕的ToolTipText設置為要提示的內容即可。下面詳細介紹一下該屬性。 ToolTipText屬性用來獲取或設置作為控件的ToolTip顯示的文本。其語法結構如下: public string ToolTipText { get; set; } l 屬性值:一個表示工具提示文本的字符串。 實現(xiàn)過程 (1)創(chuàng)建一個項目,將其命名為Ex01_10,默認窗體為Form1。 (2)從工具箱中為Form1窗體添加ToolStrip控件用來設計工具欄,并為工具欄添加相應的按鈕。 (

34、3)為相應按鈕的ToolTipTile屬性設置提示內容,就可以輕松實現(xiàn)具有提示功能的工具欄。 舉一反三 根據本實例,讀者可以開發(fā)以下功能。 具有提示功能的各種控件。 具有提示功能的窗體。 1.3 狀態(tài)欄設計 狀態(tài)欄是用來顯示當前程序狀態(tài)的。狀態(tài)欄可以分為多個面板,用來顯示不同狀態(tài)下的內容,本節(jié)主要介紹了狀態(tài)欄的用法以及如何在狀態(tài)欄中添加控件。 實例011 在狀態(tài)欄中顯示檢查框 實例說明 在設計程序界面時,為了規(guī)范界面,可以將一些控件放置在狀態(tài)欄中,這樣既能起到控制程序的作用,又能使界面和諧、美觀。運行程序,在窗體的狀態(tài)欄中加入了顯示時間檢查框。效果如圖1.11所示。 技

35、術要點 在狀態(tài)欄中添加檢查框比較容易,只需先將狀態(tài)欄加入窗體,然后將檢查框從工具箱中拖入狀態(tài)攔即可。 實現(xiàn)過程 (1)創(chuàng)建一個項目,將其命名為Ex01_11,默認窗體為Form1。 (2)從工具箱中為Form1窗體添加StatusStrip控件,并從工具箱中為狀態(tài)欄添加CheckBox控件。 (3)主要程序代碼。 private void checkBox2_CheckedChanged(object sender, EventArgs e) { if (this.checkBox2.Checked) { statusStrip1.Items[1].Text =

36、"日期:" + DateTime.Now.ToString(); } else { statusStrip1.Items[1].Text = ""; } } 舉一反三 根據本實例,讀者可以開發(fā)以下功能。 運行時設置控件的位置。 動態(tài)控制控件的顯示。 實例012 帶進度條的狀態(tài)欄 實例說明 上網瀏覽網頁的讀者都用過IE瀏覽器,讀者是否注意到該瀏覽器的狀態(tài)欄,在打開網頁的過程中,瀏覽器下邊的狀態(tài)欄中有一個進度條顯示當前網頁的載入進度,這樣的狀態(tài)欄使界面顯得更加豐富多彩,并且非常實用。本例將設計一個帶進度條的狀態(tài)欄,并且在程序運行當中進度條可以顯示其進度,該

37、實例運行結果如圖1.12所示。 技術要點 帶進度條的狀態(tài)欄在別的開發(fā)環(huán)境下實現(xiàn)相對比較復雜,但在.NET 2.0中已經提供了這個功能,只需將狀態(tài)欄的按鈕類型設置為ProgressBar即可。通過設置ProgressBar的Step 屬性指定一個特定值用以逐次遞增Value屬性的值,然后調用PerformStep方法來使該值遞增,就可以實現(xiàn)帶進度條的狀態(tài)欄。 實現(xiàn)過程 (1)創(chuàng)建一個項目,將其命名為Ex01_12,默認窗體為Form1。 (2)從工具箱中為Form1窗體添加StatusStrip控件,并為狀態(tài)欄添加相應的按鈕,在按鈕的下拉選項中選擇ProgressBar類型。 (3)

38、設置ToolStripProgressBar1的Value屬性、Maximum屬性和Step屬性。 (4)主要程序代碼。 private void Form1_Load(object sender, EventArgs e) { while (toolStripProgressBar1.Value < toolStripProgressBar1.Maximum) { this.toolStripProgressBar1.PerformStep(); } } 舉一反三 根據本實例,讀者可以開發(fā)以下功能。 在狀態(tài)欄中顯示時間。 改變進度條的顏色。 實例0

39、13 狀態(tài)欄中加入圖標 實例說明 狀態(tài)欄已經成為主界面必不可少的部分,狀態(tài)欄一般用于顯示程序狀態(tài)、當前日期等,在狀態(tài)欄中添加一張圖片會使程序的主界面更有特色。運行本例,效果如圖1.13所示。 技術要點 狀態(tài)欄中加入圖標在.NET 2.0中實現(xiàn)非常容易,只要將對應狀態(tài)欄面板的Image屬性設置為要顯示的圖片即可。 實現(xiàn)過程 (1)創(chuàng)建一個項目,將其命名為Ex01_13,默認窗體為Form1。 (2)從工具箱中為Form1窗體添加StatusStrip控件,并為狀態(tài)欄添加相應的按鈕,設置添加的按鈕的Image屬性為要顯示的圖片。 舉一反三 根據本實例,讀者可以實現(xiàn)以下功能。

40、將其他控件放置在狀態(tài)欄中,如進度條。 將其他控件放置在狀態(tài)欄中,如復選框。 1.4 導航菜單界面 對于一些應用工具軟件,界面不但要求人性化、漂亮,還要突出界面功能、使用方便,這樣才能吸引用戶使用。本節(jié)主要介紹了常用的幾種菜單界面。 實例014 OutLook界面 實例說明 程序主界面包括菜單欄、工具欄、狀態(tài)欄和樹狀視圖。OutLook界面美觀、友好,是一個很實用的程序主界面,并且菜單欄和工具欄是可移動的。運行本例效果如圖1.14所示。 圖1.14 Out Look界面 技術要點 一般程序的菜單欄和工具欄是不可移動的,但是只要將MenuStrip和ToolStrip控件的

41、AllowItemRecorder屬性設為True就可以移動。在本例中使用MenuStrip控件制作菜單欄,使用ToolStrip制作工具欄,使用StatusStrip控件制作狀態(tài)欄。下面詳細介紹一下這幾個控件的屬性。 1.ToolStrip. AllowItemReorder屬性 獲取或設置一個值,該值指示是否由ToolStrip類私自處理拖放和項重新排序。其結構如下: public bool AllowItemReorder { get; set; } l 屬性值:如果讓ToolStrip類自動處理拖放和項重新排序,為True;否則為False。默認值為False。 2.Men

42、uStrip. AllowItemReorder屬性 獲取或設置一個值,該值指示是否由ToolStrip類私自處理拖放和項重新排序。其結構如下: public bool AllowItemReorder { get; set; } l 屬性值:如果讓 MenuStrip類自動處理拖放和項重新排序,為True;否則為False。默認值為False。 3.ToolStripItem.DisplayStyle屬性 獲取或設置是否在ToolStripItem上顯示文本和圖像。 public virtual ToolStripItemDisplayStyle DisplayStyle {

43、get; set; } l 屬性值:ToolStripItemDisplayStyle值之一。默認為ImageAndText。 注意:在移動菜單欄和工具欄時,需要按住“Alt”鍵,同時用鼠標進行拖動。 實現(xiàn)過程 (1)創(chuàng)建一個項目,將其命名為Ex01_14,默認窗體為Form1。 (2)在Form1窗體上添加MenuStrip控件,用來設計主菜單;添加ToolStrip控件,用來設計工具欄;添加StatusStrip控件,用來設計狀態(tài)欄;添加ImageList控件和TreeVew控件,用來設計樹結構。 (3)分別為MenuStrip控件、ToolStrip控件、ImageList

44、控件和TreeVew控件添加子項,將MenuStrip控件和ToolStrip控件的AllowItemRecorder屬性設為True,并將ToolStrip控件的每個子項的DisplayStyle屬性設置為“ImageAndText”。下面詳細介紹這幾個屬性。 舉一反三 根據本實例,讀者可以實現(xiàn)以下功能。 制作一個系統(tǒng)菜單。 制作一個導航界面。 實例015 帶帶導航菜單的主界面 實例說明 在窗體界面中,菜單欄是不可缺少的重要組成部分。本實例是用其他的控件來制作一個摸擬菜單欄。運行程序,單擊窗體上面的按鈕,將會在按鈕的下面顯示一個下拉列表。如圖1.15所示。 技術要點 該

45、實例中主要使用Button控件和ListView控件制作導航菜單界面。在對ListView控件添加菜單信息時,必需在前面寫入添加語句,如Listview.Items.Add,否則添加的菜單信息將替換前一條信息。單擊相應的按鈕時,應首先對ListView控件進行清空,否則在ListView控件中將繼續(xù)上一次的添加菜單信息。 實現(xiàn)過程 (1)創(chuàng)建一個項目,將其命名為Ex01_15,默認窗體為Form1。 (2)在Form1窗體上添加MenuStrip控件設計菜單欄;添加ToolStrip控件設計工具欄;添加SplitContainer控件、ImageList控件、3個Button控件和Lis

46、tView控件用來制作左側的導航欄。 (3)分別為MenuStrip控件、ToolStrip控件添加子項,將3個Button按鈕和ListView控件加入SqlitContainer1.panel的左側部分中。 (4)主要程序代碼。 加載窗體時,設置左側導航欄內容的實現(xiàn)代碼如下: private void Form1_Load(object sender, EventArgs e) { listView1.Clear(); listView1.LargeImageList = imageList1; listView1.Items.Add("設置上下班時間", "設置

47、上下班時間", 0); listView1.Items.Add("是否啟用短信提醒", "是否啟用短信提醒", 1); listView1.Items.Add("設置密碼", "設置密碼", 2); } 添加打開按鈕的ListView控件顯示內容的實現(xiàn)代碼如下: private void button2_Click_1(object sender, EventArgs e) { listView1.Dock = DockStyle.None; button2.Dock = DockStyle.Top; button1.SendToBack(); bu

48、tton1.Dock = DockStyle.Top; button3.Dock = DockStyle.Bottom; listView1.Dock = DockStyle.Bottom; listView1.Clear(); listView1.Items.Add("近期工作記錄", "近期工作記錄", 3); listView1.Items.Add("近期工作計劃", "近期工作計劃", 4); } 添加編輯按鈕的ListView控件顯示內容的實現(xiàn)代碼如下: private void button3_Click_1(object sender, EventA

49、rgs e) { listView1.Dock = DockStyle.None; button3.SendToBack(); button3.Dock = DockStyle.Top; button2.SendToBack(); button2.Dock = DockStyle.Top; button1.SendToBack(); button1.Dock = DockStyle.Top; listView1.Dock = DockStyle.Bottom; listView1.Clear(); listView1.Items.Add("編輯工作進

50、度報告", "編輯工作進度報告", 5); listView1.Items.Add("編輯項目設計圖", "編輯項目設計圖", 6); } 添加設置按鈕的ListView控件顯示內容的實現(xiàn)代碼如下: private void button1_Click_1(object sender, EventArgs e) { listView1.Dock = DockStyle.None; button1.Dock = DockStyle.Top; button2.Dock = DockStyle.Bottom; button3.SendToBack(); butt

51、on3.Dock = DockStyle.Bottom; listView1.BringToFront(); listView1.Dock = DockStyle.Bottom; listView1.Clear(); listView1.Items.Add("設置上下班時間", "設置上下班時間", 0); listView1.Items.Add("是否啟用短信提醒", "是否啟用短信提醒",1); listView1.Items.Add("設置密碼", "設置密碼", 2); } 舉一反三 根據本實例,讀者可以實現(xiàn)以下功能。 制作一個系統(tǒng)菜單。 制作大

52、型系統(tǒng)的導航界面。 實例016 圖形化的導航界面 實例說明 如果以按鈕來代替菜單的功能,會使界面更具有個性化。使操作者更易于操作。下面介紹按鈕顯示菜單的設計方法。運行本例,效果如圖1.16所示。 圖1.16 圖形化的導航界面 技術要點 本實例主要通過設置Button控件的相應屬性,確定其按鈕的位置、文字、顯示樣式和要顯示的圖片等。下面對Button控件相應屬性進行詳細介紹。 1.Button. BackColor屬性 獲取或設置控件的背景色,其方法結構如下: public override Color BackColor { get; set; } l 屬性值:一個表

53、示背景色的Color值。 2.Button. FlatStyle屬性 獲取或設置按鈕控件的平面樣式外觀。其代碼如下: public FlatStyle FlatStyle { get; set; } l 屬性值:FlatStyle 值之一。默認值為Standard。 3.Button. TextImageRelation屬性 獲取或設置文本和圖像相互之間的相對位置。其代碼如下: public TextImageRelation TextImageRelation { get; set; } l 屬性值:TextImageRelation 的值之一。默認為Overlay。

54、實現(xiàn)過程 (1)創(chuàng)建一個項目,將其命名為Ex01_16,默認窗體為Form1。 (2)在Form1窗體上添加MenuStrip控件用來設計菜單欄,添加ToolStrip控件用來設計工具欄,添加Panel控件、Button控件用來設計圖形化的導航按鈕。 (3)分別為MenuStrip控件、ToolStrip控件添加子項,并為Panel控件選擇背景圖片。 (4)將Button控件的BackColor屬性設為“Transparent”、FlatStyle屬性設置為“Flat”、TextImageRelation屬性設置為“ImageBeforeText”。 (5)主要程序代碼。 pri

55、vate void button1_Click(object sender, EventArgs e) { //使子項可見 button5.Visible = true; button6.Visible = true; button7.Visible = true; } private void button2_Click(object sender, EventArgs e) { //使子項可見 button8.Visible = true; button9.Visible = true; button10.Visible = true;

56、} private void button3_Click(object sender, EventArgs e) { //使子項可見 button11.Visible = true; button12.Visible = true; button13.Visible = true; } 舉一反三 根據本實例,讀者可以實現(xiàn)以下功能。 制作動態(tài)的按鈕界面。 制作動態(tài)的圖片界面。 1.5 特色程序界面 現(xiàn)在有很多開發(fā)人員都將界面制作成不同類型的樣式,這樣可以使界面更加形象化。本節(jié)主要介紹了如何對程序界面進行特色化設計,如類似QQ、Windows XP的界面

57、等。 實例017 菜類QQ的程序界面 實例說明 一般程序都是以菜單欄和工具欄的形式調用其他功能模塊,如果以動態(tài)的類似QQ的程序界面來調用其他功能模塊,將會給用戶一種新鮮的感覺,使用戶對軟件更感興趣。實例運行結果如圖1.17所示。 技術要點 本例主要使用Button控件來完成布局,使用ListView控件來顯示有圖標的功能菜單。ListView控件的常用屬性及說明如下。 1.ListView.Items屬性 使用該屬性可直接訪問表示列表中項目的ListItem對象。其結構如下: public ListViewItemCollection Items { get; } l 屬性

58、值: ListView.ListViewItemCollection包含ListView控件中所有的項。 2.ListView.Dock屬性 獲取或設置哪些控件邊框??康狡涓缚丶⒋_定控件如何隨其父級一起調整大小。其結構如下: public virtual DockStyle Dock { get; set; } l 屬性值:DockStyle值之一。默認為None。 實現(xiàn)過程 (1)創(chuàng)建一個項目,將其命名為Ex01_17,默認窗體為Form1。 (2)在窗體上添加Button控件、ListView控件和ImageList控件。設置ListView控件的ImageList屬性為

59、ImageList控件。 (3)主要程序代碼。 添加“我的好友”選項內容的實現(xiàn)代碼如下: private void button1_Click(object sender, EventArgs e) { listView1.Dock = DockStyle.None; button1.Dock = DockStyle.Top; button2.Dock = DockStyle.Bottom; button3.SendToBack(); button3.Dock = DockStyle.Bottom; listView1.BringToFront(); listView1.Dock = DockStyle.Bottom; listView1.Clear(); listView1.Items.Add("小豬", "小豬", 0); listView1.Items.Add("小狗", "小狗", 1);

展開閱讀全文
溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
5. 裝配圖網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

相關資源

更多
正為您匹配相似的精品文檔
關于我們 - 網站聲明 - 網站地圖 - 資源地圖 - 友情鏈接 - 網站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網版權所有   聯(lián)系電話:18123376007

備案號:ICP2024067431-1 川公網安備51140202000466號


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務平臺,本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對上載內容本身不做任何修改或編輯。若文檔所含內容侵犯了您的版權或隱私,請立即通知裝配圖網,我們立即給予刪除!