开发环境:Win7 64Bit简体中文版,VS2012简体中文版。
主要内容:
- 登录页面与主页面
- 背景资源的使用
- 控件程序集
- 制作安装包
打开VS2012,选择文件|新建|项目,弹出新建项目对话框:
注:项目是一个实体,可以是一个执行文件,一个程序集,解决方案就是若干个项目的集合,如果只想做一个简单的工具,只有一个项目,可以把为解决方案创建目录去掉,可以省掉一集目录;本例子的解决方案中有一个执行程序,两个程序集,所以要选上,项目名称与解决方案名称也可以不一样。
点击确定之后,项目就生成了。
生成项目后,立即生成并执行一下,这是一个非常重要的习惯,在重要的节点编译执行一下,可以避免很多编译问题。
观察一下新建的项目,程序入口文件是:Program.cs,唯一的窗体类是Form1,对应两个文件:Form1.cs,Form1.Designer.cs,把Form1修改为Logon。
在解决方案资源管理器中,选中Form1.cs,右键菜单中选择重命名,名字变为可编辑状态,输入Logon,弹出对话框,选择是,生成并执行一下,发现窗口的标题依然是Form1。
双击解决方案资源管理器中的Logon.cs,打开Logon.cs的设计界面,右击|属性,打开属性页面,找到Text项,把这里的“Form1”修改为“登录”,再编译执行一下。
修改名字后,可以看到项目下面多了一个Logon.resx文件,这是Logon窗体对应的资源,将窗体的资源和窗体放在一起可以方便以后移植。(这个resx文件就是一个xml文件)
添加背景:在Logon设计界面,选中窗体,右击|属性,在外观里找到BackgroundImage,点击后面的...的按钮,弹出一个资源上下文对话框,本地资源即对应Logon.resx,项目资源文件对应的是Properties/Resources.resx,这里选择放在本地资源中,导入文件之后,可以看到Logon.resx明显变大了,打开看一下,可以看到整个图片以base64的方式插入到文件中了。编译之后,图片被编译进直行程序之中,可以脱离图片文件。
生成并执行,调整登录窗口的大小,可以看到背景是以平铺的方式显示的,有必要固定登录窗口的大小,在窗口属性里找到“FormBorderStyle”,改成FixedSingle(其他值也行)。
双击解决方案资源管理器中的Logon.resx,打开资源文件,可以看到其中有一个对象“$this.BackgroundImage”。
从工具箱中拖入一个Button到对话框中,在属性窗口设置Text,即Button上显示的名称,设置(Name)为btn_ok,即源代码中的对象名。
添加Click事件响应:在属性页面中,点击按钮,切换到事件页面,找到Click,双击,就自动生成了名为btn_ok_Click的响应,在Form.cs中可以看到新生成的btn_ok_Click方法。
添加主窗口:右击项目|添加|新建项|Windows窗体,输入MainFrame,点击添加。
由Log窗口切换到主窗口:
private void btn_ok_Click(object sender, EventArgs e) { this.DialogResult = DialogResult.OK; this.Close(); }
static class Program { /// <summary> /// 应用程序的主入口点。 /// </summary> [STAThread] static void Main() { Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); Logon logon = new Logon(); if (logon.ShowDialog() != DialogResult.OK) { return; } Application.Run(new MainFrame()); } }
这样,点击登录窗口中的按钮,就能关闭登录窗口,并打开主窗口。在登录窗口中打开主窗口,然后把自己隐藏的方法是不好的。
添加控件程序集:右击解决方案|添加|新建项目|Windows窗体控件库。窗体控件库可以看做是一个窗体的一部分,做好之后可以放到其他窗体中。
在主窗体中加入控件:在工具箱中右击|添加选项卡,建立一个名为“我的控件”的选项卡,右击|选择项,里面看不到刚建的控件,点浏览,找到控件的dll。之后就能把控件加入到主窗体中了。
制作安装包:如果只看到启用的那一项,就点击一下,进入到注册下载的网页,随便填了下载一下,并没有多麻烦。
这是一个限制版的,很多功能不能用,打开Project Assistant页面(新建项目后会自动打开)
Application Files:选择Add Project Outputs,选择两个项目的主输出,也就是exe与dll。
在Setup项目上点击生成,在目录“SetupExpressSingleImageDiskImagesDISK1”下有一个Setup文件,安装好之后,可以在“C:Program Files (x86)YCGuide”下面看到安装的文件。
通过开始菜单也可以看到刚刚做的程序。
感觉这个挺垃圾的,我是希望大家都开发绿色版的软件。