构建.NET Windows 窗体系统托盘最小化应用程序
与可最小化到系统托盘的传统应用程序不同,仅驻留在系统托盘中的 Windows 窗体应用程序需要不同的方法。本文旨在指导您完成构建此类最小化应用程序的步骤。
解决方案:
此类应用程序的关键是覆盖默认的 Application.Run() 方法,该方法启动标准应用程序循环。相反,您将创建一个从 ApplicationContext 类继承的自定义类。在 ApplicationContext 的构造函数中,您将初始化 NotifyIcon 实例,该实例表示系统托盘中的图标并处理其行为。
代码:
以下是您需要实现的代码示例:
<code class="language-csharp">static class Program { [STAThread] static void Main() { Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); Application.Run(new MyCustomApplicationContext()); } } public class MyCustomApplicationContext : ApplicationContext { private NotifyIcon trayIcon; public MyCustomApplicationContext() { // 初始化托盘图标 trayIcon = new NotifyIcon() { Icon = Resources.AppIcon, ContextMenu = new ContextMenu(new MenuItem[] { new MenuItem("退出", Exit) }), Visible = true }; } void Exit(object sender, EventArgs e) { // 隐藏托盘图标,否则它将一直显示到用户将鼠标悬停在其上 trayIcon.Visible = false; Application.Exit(); } }</code>
此代码创建了一个仅存在于系统托盘中的应用程序,该应用程序具有图标、工具提示和一个右键单击菜单选项来退出应用程序。
以上是如何在 .NET Windows 窗体中创建最小系统托盘应用程序?的详细内容。更多信息请关注PHP中文网其他相关文章!