[C#] Application.EnableVisualStyles()的作用及用法
https://blog.csdn.net/qq_41319343/article/details/86632254
1、publicstaticvoidEnableVisualStyles():此方法为应用程序启用可视样式。
是激活应用程序的显示风格,而显示风格是构成操作系统主题的各种元素,如色彩、字体等。如果控件和OS支持,那么控件的绘制就会根据显示风格来实现。实际上该方法的调用必须早于任何一个控件的创建。通常它位于Main的第一行,在集成开发环境下会自动被添加。
当调用 EnableVisualStyles时,无需单独的清单即可启用可视化样式。
-
static class Program
-
{
-
/// <summary>
-
/// 应用程序的主入口点。
-
/// </summary>
-
[
-
static void Main()
-
{
-
Application.EnableVisualStyles();
-
Application.SetCompatibleTextRenderingDefault(false);
-
Application.Run(new Form1());
-
}
-
}
简单的说就是让你的控件(包括窗体)显示出来。
2、Application.SetCompatibleTextRenderingDefault(false)
(1)作用:在应用程序范围内设置控件显示文本的默认方式(可以设为使用新的GDI+ , 还是旧的GDI)
true使用GDI+方式显示文本,
false使用GDI方式显示文本。
GDI GDI+ 的区别
(2).只能在单独运行窗体的程序中调用该方法;不能在插件式的程序中调用该方法。
(3).只能在程序创建任何窗体前调用该方法,否则会引发InvalidOperationException异常。
某些窗体控件在给它们的文本着色时可以使用 TextRenderer类也可以使用 Graphics类。TextRenderer类是基于GDI图形库的,而Graphics类则基于GDI+库。这两种类的并存始于.NET Framework 2.0,部分出于性能原因,部分是由于GDI+的本地化问题。若控件支持UseCompatibleTextRenderingproperty属性,则该方法将此属性设置为默认值。
UseCompatibleTextRendering属性用于兼容使用TextRenderer类的窗体控件和使用 Graphics 类的.NET Framework 1.0和.NET Framework 1.1下的应用程序。如果你到程序不是从1.0或者1.1版本升级来的,那么建议你把该属性设置为false。
除了窗体应用程序,不要调用该方法。
至于为什么出现基于GDI 的TextRenderer类,MSDN上有,我也不想再翻译了。主要是基于性能,美观等考虑,以及多语言字体的兼容问题。
3、Application.Run()函数
从MSDN中查看了一下Application.Run()函数的定义--"在当前线程上开始运行标准应用程序消息循环。"用Reflector查看了一下Application.Run()的实现代码,如下所示:
-
Public Shared Sub Run()
-
ThreadContext.FromCurrent.RunMessageLoop(-1, New ApplicationContext)
-
End Sub
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· Obsidian + DeepSeek:免费 AI 助力你的知识管理,让你的笔记飞起来!
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了