我按照常用链接提示将应用程序减少到系统托盘:http://www.developer.com/net/csharp/article.php/3336751现在它可以工作,但仍然存在问题:我的应用程序已显示什么时候开始; 我希望它直接在系统托盘中启动.我试图在Load事件中最小化并隐藏它,但它什么也没做.
编辑:我可以,如海报建议,修改快捷方式属性,但我宁愿使用代码:我没有完全控制安装软件的每台计算机.
我不想从除了systray之外的任何地方完全删除它,我只想让它最小化.
有任何想法吗 ?
谢谢
小智 26
在你的主程序中,你可能有一行表格:
Application.Run(new Form1());
Run Code Online (Sandbox Code Playgroud)
这将强制显示表单.您需要创建表单,但不要将其传递给Application.Run
:
Form1 form = new Form1();
Application.Run();
Run Code Online (Sandbox Code Playgroud)
请注意,在您致电之前,该程序现在不会终止Application.ExitThread()
.最好从FormClosed
事件的处理程序执行此操作.
private void Form1_FormClosed(object sender, FormClosedEventArgs e)
{
Application.ExitThread();
}
Run Code Online (Sandbox Code Playgroud)
lub*_*sko 13
这就是你如何做到的
static class Program
{
[STAThread]
static void Main()
{
NotifyIcon icon = new NotifyIcon();
icon.Icon = System.Drawing.SystemIcons.Application;
icon.Click += delegate { MessageBox.Show("Bye!"); icon.Visible = false; Application.Exit(); };
icon.Visible = true;
Application.Run();
}
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
22067 次 |
最近记录: |