当前位置: 首页 > 编程语言 > C#

如何在系统托盘中直接启动应用程序?(.NETC#)分享

时间:2023-04-10 14:02:31 C#

如何直接在系统托盘启动应用程序?(.NETC#)我的意思是当用户启动我的应用程序(exe)时。我希望它直接在系统托盘中启动而不显示窗口。就像防病毒软件和下载管理器一样,它们会在系统托盘中静默启动和运行。我想要相同的效果,当用户单击notifyIcon的上下文菜单条的“显示”按钮时,只有应用程序应该显示GUI。我正在使用它,但它不适用于privatevoidForm_Load(objectsender,EventArgse){this.Hide();}可能我需要在其他没有GUI但有notifyIcon和ContextMenuStrip的类中使用Main()函数,它们的选项将实例化GUI窗口类。正确的?我通常设置它的方式是将Program.cs修改为如下所示:[STAThread]staticvoidMain(){Application.EnableVisualStyles();Application.SetCompatibleTextRenderingDefault(false);使用(NotifyIconicon=newNotifyIcon()){icon.Icon=System.Drawing.Icon.ExtractAssociatedIcon(Application.ExecutablePath);icon.ContextMenu=newContextMenu(newMenuItem[]{newMenuItem("显示表单",(s,e)=>{newForm1().Show();}),newMenuItem("退出",(s,e)=>{Application.Exit();}),});icon.Visible=true;应用程序运行();icon.Visible=false;使用这个,你不需要担心隐藏表单而不是关闭它以及可能导致的所有其他黑客......你也可以制作一个单例表单而不是每次Form选项时实例化一个新表单点击。这是建立的基础,而不是最终解决方案。您还需要设置通知图标。手动或通过工具栏创建notifyIcon(将notifyIcon拖到窗体上):this.notifyIcon=newSystem.Windows.Forms.NotifyIcon(components);然后将此代码添加到Form_Load()://通知图标设置notifyIcon。可见=真;notifyIcon.Text="此处提示信息";this.ShowInTaskbar=false;这个。隐藏();尽管如前所述,这将隐藏它之前的表格。从这个问题的公认答案来看,解决方案似乎是更改:Application.Run(newForm1());到:Form1f=newForm1();应用程序运行();在主要()。您是否使用C#创建了Windows应用程序?您需要将NotifyIcon控件拖到窗体上,该控件将放置在窗体下方,因为它在窗体本身上没有可视化表示。然后设置它的属性,比如图标……先试试这个……以上是C#学习教程:如何在系统托盘中直接启动应用程序?(.NETC#)所有内容分享,如果对你有用,需要了解更多C#学习教程,希望大家多多关注。本文收集自网络,不代表立场。如涉及侵权,请点击右侧联系管理员删除。如需转载请注明出处: