C#Windows應(yīng)用程序開發(fā)之創(chuàng)建窗體
C#Windows應(yīng)用程序開發(fā)之創(chuàng)建窗體的前言:通常Windows應(yīng)用程序都有相似的特征:控件、菜單、工具條、狀態(tài)欄等等。每次我們開始作一個(gè)新的windows應(yīng)用程序時(shí)都是以相同的事情開始:建立項(xiàng)目,添加控件和事件處理器。如果我們有一個(gè)模板,那么我們就可以節(jié)約大量的時(shí)間了。
在介紹如何建立模板的過程中,將涉及大量的微軟.net framework類庫的基本知識。如果你沒有使用集成開發(fā)環(huán)境那么本文介紹的模板對你將非常有用,如果你使用了visual studio.net這樣的集成開發(fā)環(huán)境你也可以從中了解控件的工作方式,這對你也是很有用的。
在windows應(yīng)用程序開發(fā)中,你不可能完全跳過這些步驟,你可以對他作些修改,但不可能完全跳過。下面是完全的模板圖:
C#Windows應(yīng)用程序開發(fā)之創(chuàng)建窗體
在.Net FrameWork程序設(shè)計(jì)中,窗體總是System.Windows.Forms.Form類的子類,他繼承聊著各類的全部特征,你甚至不用添加任何一行代碼就可以創(chuàng)建window窗體了?,F(xiàn)在我們創(chuàng)建一個(gè)form類的子類myapp,需要注意的是在說明繼承時(shí)使用冒號:。
- using System.Windows.Forms;
- public class MyWinApp: Form {
- }
與其他程序相似,我們需要一個(gè)main()的主方法作為應(yīng)用程序的入口。在main()中使用System.Windows.Forms的run方法來開始應(yīng)用程序和顯示窗體。run方法有三種重載方式,對于windows應(yīng)用程序,我們采取重載一個(gè)窗體對象的方式:
- public static void Main() {
- MyWinApp form = new MyWinApp();
- Application.Run(form);
- }
作為選擇,可以在main()方法中將兩行代碼寫成一行:
- public static void Main() {
- Application.Run(new MyWinApp());
- }
◆C#Windows應(yīng)用程序開發(fā)之創(chuàng)建窗體設(shè)置屬性
一旦有了窗體,就可以設(shè)置它的屬性(象高度、寬度、標(biāo)題等)并指定一個(gè)象圖1那樣的圖標(biāo),可以通過代碼或從構(gòu)造器重調(diào)用一個(gè)方法來完成這個(gè)設(shè)置。在list1中有一個(gè)方法InitializeComponent,可以將初始化代碼寫入其中。
使用width和height屬性設(shè)置寬度和高度
- this.Width = 400;
- this.Height = 300;
使用窗體的text屬性設(shè)置標(biāo)題
- this.Text = "My Windows Application";
◆C#Windows應(yīng)用程序開發(fā)之創(chuàng)建窗體設(shè)置圖標(biāo)
如果未作說明,windows應(yīng)用程序?qū)@示一個(gè)缺省圖標(biāo),可以修改這個(gè)圖標(biāo),方法是設(shè)置窗體的icon屬性,這個(gè)屬性接受一個(gè)System.Drawing.Icon對象。Icon類有幾個(gè)可以用于初始化Icon對象的構(gòu)造函數(shù),需要說明的是***提供.ico文件的完全路徑。
- this.Icon = new Icon(imageFolder + "applicationLogo.ico");
這里 imageFolder是一個(gè)靜態(tài)域,用于指示icon文件的目錄,imageFolder的定義如下:
- static String imageFolder = "Images" +
- Path.DirectorySeparatorChar.ToString();
這告訴應(yīng)用程序icon文件在應(yīng)用程序的image目錄下,這里使用了System.IO.Path 類的DirectorySeparatorChar屬性獲得操作系統(tǒng)用于分隔目錄和父目錄的分隔符,在這里沒有使用"/",這是因?yàn)閷τ趙indows操作系統(tǒng)這是正確的,但對于linux和unix則不然。這也是為了證明模板對于其他操作系統(tǒng)也是方便的。
◆C#Windows應(yīng)用程序開發(fā)之創(chuàng)建窗體窗體的位置
使窗體居中時(shí)非常有用的,要達(dá)到這個(gè)目的,需要使用StartPosition屬性,并將FormStartPosition 的一個(gè)成員賦給他。
this.StartPosition = FormStartPosition.CenterScreen;
當(dāng)然也可以用form類的CenterToScreen方法是窗體居中,但這個(gè)方法不能直接使用。
this.CenterToScreen();
form類還有其他一些讓人感興趣的屬性和方法,這里列出了其中的部分:
1、設(shè)置Opacity 屬性創(chuàng)建一個(gè)透明或半透明的窗體
2、設(shè)置modal屬性使窗體為模式的或非模式的
3、通過BackColor屬性改變窗體的背景顏色
4、將TopMost屬性設(shè)置為true,以確定窗體在其他所有非最頂部窗體之上
C#Windows應(yīng)用程序開發(fā)之創(chuàng)建窗體的基本介紹就到這里,希望對你了解和學(xué)習(xí)C#Windows應(yīng)用程序開發(fā)有所幫助。
【編輯推薦】