C# winform编程中Program.cs


每个winform程序都有一个Program.cs文件,我们今天来熟悉下里面的代码。先看一个VS自动生成的例子。

using System;
using System.Collections.Generic;
using System.Windows.Forms;

namespace FileSecond
{
    static class Program
    {
        ///<summary>
        /// 应用程序的主入口点。
        ///</summary>
        [STAThread]
        static void Main()
        {
            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);
            Application.Run(new MainForm());
        }
    }
}

引用那些就不说了。大家注意到在main函数之前有一个[STAThread]的特性,这个特性只是应用程序的COM线程模型是单线程单元。使用Windows窗体的任何应用程序的入口点上必须应用此特性;如果没有这个特性,则Windows组件可能无法工作。因为,如果不存在该特性,应用程序就会使用Windows窗体不支持的多线程单元模型。

     System.Windows.Form.Application类提供了一系列静态方法和属性以管理窗体应用程序,例如启动和停止应用程序、处理Windows消息的方法和获取应用程序信息的属性。
   Application.EnableVisualStyles ()
  此方法为应用程序启用可视样式。如果控件和操作系统支持视觉样式,则控件将以视觉样式进行绘制。若要使 EnableVisualStyles生效,必须在应用程序中创建任何控件之前调用它;EnableVisualStyles 通常是 Main 函数的第一行。当调用 EnableVisualStyles时,无需单独的清单即可启用可视化样式。

     Application.SetCompatibleTextRenderingDefault()
    某些 Windows 窗体控件可以使用 GDI 图形库或更新的 GDI+ 库来呈现其文本。由于 GDI+ 的性能和本地化问题而做出这样的更改。默认情况下,将支持 UseCompatibleTextRendering 属性的现有控件设置为 true 以获得向后兼容性,但 Visual Studio 等环境中的所有新控件都将该属性设置为 false。要切换新控件的默认文本呈现时,请使用 SetCompatibleTextRenderingDefault。如果在另一个应用程序中承载 Windows 窗体代码,例如 Internet Explorer,切勿调用该方法。仅在独立的 Windows 窗体应用程序中调用该方法。
    application.Run()

  Main方法调用Application.Run时,创建了MainForm类的一个实例作为参数。这样就指定了当前应用程序的主窗体为MainForm窗体对象,即用MainForm窗体对象来管理当前应用程序消息循环。Application.Run方法同时指定窗体对象可见,并显示它。

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM