通常windows应用程序都有相似的特征:控件、菜单、工具条、状态栏等等。每次我们开始作一个新的windows应用
程序时都是以相同的事情开始:建立项目,添加控件和事件处理器。如果我们有一个
模板,那么我们就可以节约大量的时间了。
在介绍如何建立模板的过程中,将涉及大量的微软.net framework类库的基本知识。如果你没有使用集成开发环境那么本文介绍的
模板对你将非常有用,如果你使用了visual studio.net这样的集成开发环境你也可以从中了解控件的工作方式,这对你也是很有用的。
写一个windows应用
程序总是从下面的几个步骤开始:
1、创建一个窗体
2、给窗体添加控件
3、添加菜单和菜单项,并绑定到窗体上
4、创建工具条
5、添加状态栏
6、添加事件处理器
在windows应用
程序开发中,你不可能完全跳过这些步骤,你可以对他作些修改,但不可能完全跳过。
创建窗体
在.Net FrameWork
程序设计中,窗体总是System.Windows.Forms.Form类的子类,他继承聊着各类的全部特征,你甚至不用添加任何一行代码就可以创建window窗体了。现在我们创建一个form类的子类myapp,需要注意的是在说明继承时使用冒号:。
using System.Windows.Forms;
public class MyWinApp: Form {
}
与其他程序相似,我们需要一个main()的主方法作为应用程序的入口。在main()中使用System.Windows.Forms的run方法来开始应用程序和显示窗体。run方法有三种重载方式,对于windows应用
程序,我们采取重载一个窗体对象的方式:
public static void Main() {
MyWinApp form = new MyWinApp();
Application.Run(form);
}
作为选择,可以在main()方法中将两行代码写成一行:
public static void Main() {
Application.Run(new MyWinApp());
}
设置属性
一旦有了窗体,就可以设置它的属性(象高度、宽度、标题等)并指定一个象图1那样的图标,可以通过代码或从构造器重调用一个方法来完成这个设置。在list1中有一个方法InitializeComponent,可以将初始化代码写入其中。
使用width和height属性设置宽度和高度
this.Width = 400;
this.Height = 300;
使用窗体的text属性设置标题
this.Text = "My Windows Application";
设置图标
如果未作说明,windows应用
程序将显示一个缺省图标,可以修改这个图标,方法是设置窗体的icon属性,这个属性接受一个System.Drawing.Icon对象。Icon类有几个可以用于初始化Icon对象的构造函数,需要说明的是最好提供.ico文件的完全路径。
this.Icon = new Icon(imageFolder + "applicationLogo.ico");
这里 imageFolder是一个静态域,用于指示icon文件的目录,imageFolder的定义如下:
static String imageFolder = "Images" +
Path.DirectorySeparatorChar.ToString();
这告诉应用程序icon文件在应用
程序的image目录下,这里使用了System.IO.Path 类的DirectorySeparatorChar属性获得操作系统用于分隔目录和父目录的分隔符,在这里没有使用"/",这是因为对于windows操作系统这是正确的,但对于linux和unix则不然。这也是为了证明
模板对于其他操作系统也是方便的。
窗体的位置
使窗体居中时非常有用的,要达到这个目的,需要使用StartPosition属性,并将FormStartPosition 的一个成员赋给他。
this.StartPosition = FormStartPosition.CenterScreen;
当然也可以用form类的CenterToScreen方法是窗体居中,但这个方法不能直接使用。
this.CenterToScreen();
form类还有其他一些让人感兴趣的属性和方法,这里列出了其中的部分:
1、设置Opacity 属性创建一个透明或半透明的窗体
2、设置modal