时间:2021-05-20
本文实例讲述了C#实现托盘程序并禁止多个应用实例运行的方法。分享给大家供大家参考,具体如下:
托盘程序的制作:
1.把NotifyIcon控件拉一个到窗体上,并设置NotifyIcon的Icon(很重要!否则运行后看不到效果)
2.窗体关闭时,将程序最小化到系统托盘上
private void Form1_FormClosing(object sender, FormClosingEventArgs e){ //MessageBox.Show("程序将最小化到系统托盘区"); e.Cancel = true; // 取消关闭窗体 this.Hide(); this.ShowInTaskbar = false;//取消窗体在任务栏的显示 this.notifyIcon1.Visible = true;//显示托盘图标}3.放一个上下文菜单,添加几个基本项,"显示主窗体","退出" ,将这个菜单挂到NotifyIcon上
private void menuShow_Click(object sender, EventArgs e){ this.Show(); this.ShowInTaskbar = true; this.notifyIcon1.Visible = false;}private void menuExit_Click(object sender, EventArgs e){ this.Dispose(true); Application.ExitThread();}4.左键单击托盘图标时,显示主窗体,右击时当然是弹出上面设置的菜单
private void notifyIcon1_MouseClick(object sender, MouseEventArgs e){ if (e.Button == MouseButtons.Left) { this.Show(); this.ShowInTaskbar = true; this.notifyIcon1.Visible = false; }}防止这个程序同时运行多个
using System;using System.Collections.Generic;using System.Windows.Forms;using System.Threading;namespace LuceneTest{ static class Program { /// <summary> /// 应用程序的主入口点。 /// </summary> [STAThread] static void Main() { bool bCreatedNew; Mutex m = new Mutex(false, "Product_Index_Cntvs", out bCreatedNew); if (bCreatedNew) { Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); Application.Run(new Form1()); } } }}希望本文所述对大家C#程序设计有所帮助。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
本文实例讲述了C#简单实现防止多个程序运行的方法。分享给大家供大家参考,具体如下://////应用程序的主入口点。///[STAThread]staticvoi
本实例主要实现下面三个基本功能1、C#开发windows服务2、禁止QQ等程序运行3、为windows服务创建自动安装程序下面针对这三个基本功能进行实现一、C#
本文实例讲述了C#实现系统托盘通知的方法。分享给大家供大家参考。具体实现方法如下:namespaceWindowsApplication1{publicpart
本文实例讲述了C#使用Mutex简单实现程序单实例运行的方法。分享给大家供大家参考。具体如下:[STAThread]staticvoidMain(){booli
本文以实例形式讲述了C#应用BindingSource实现数据同步的方法,对C#数据库程序开发来说具有一定的参考借鉴价值。具体实现方法如下:下面的代码示例演示如