注意:Windows窗体生成器生成的代码中不能加注释,即使加了注释也会被自动去掉!
- 使用NotifyIcon控件,该控件的作用是程序运行时在Windows任务栏右侧的通知区域中(任务栏)显示图标。
- 使用contextMenuStrip控件,该控件可以关联到其它控件,作用是当右击关联的控件时显示菜单。
- 在NotifyIcon1的属性列表中的contextMenuStrip的下拉列表中选择你刚才创建的contextMenuStrip1菜单。你的托盘程序就拥有一个菜单了。
- 接下来的与通常图形界面程序的编写相同,首先在[设计]窗口中设计你的界面,然后双击做好的菜单或按钮进入代码窗口写对应的代码。
接下来是一些托盘程序所应具有的一些特别功能的代码
- 为托盘程序设置双击托盘图标显示/隐藏窗口
首先是在Windows 窗体设计器生成的代码中为托盘图标增加双击事件,具体做法是在具有托盘图标的Form的designer.cs中找到notifyIcon的部分,加入语句
this.notifyIcon1.DoubleClick += new System.EventHandler(this.notifyIcon1_DoubleClick);
其作用是重载notifyIcon1的双击事件,为其添加方法notifyIcon1_DoubleClick(注意,这里的notifyIcon1和notifyIcon1_DoubleClick可以由你自己设定,可能与这里不同)。
接着我们来实现notifyIcon1_DoubleClick方法,在Form的Class中写方法:
private void notifyIcon1_DoubleClick(object sender, EventArgs e)
{
this.Show();
if (this.WindowState == FormWindowState.Minimized)
this.WindowState = FormWindowState.Normal;
else if (this.WindowState == FormWindowState.Normal)
this.WindowState = FormWindowState.Minimized;
this.Activate(); //激活窗体并为其赋予焦点
}
- 最小化时隐藏窗体(隐藏任务栏上的项目)
首先同样是修改窗体设计器自动生成的代码,在Form1(假设,可能不同)中增加语句
this.Resize += new System.EventHandler(this.Form1_Resize);
然后实现Form1_Resize方法:
private void Form1_Resize(object sender, System.EventArgs e)
{
if (this.WindowState == FormWindowState.Minimized)
{
this.Hide();
}
}
- 将关闭按钮重载为最小化
protected override void OnFormClosing(FormClosingEventArgs e)
{
if (!CloseTag)
{
this.WindowState = FormWindowState.Minimized;
e.Cancel = true;
}
else
e.Cancel = false;
base.OnFormClosing(e);
}
这里需要说明的是,我的Form1有一个Bool型私有变量CloseTag,另外我的程序有一个关闭按钮,该按钮才是真正的关闭程序。我的做法是当使用我的关闭按钮时将CloseTag设为True,否则CloseTag为false。这样就做到了完整的关闭重载。
分享到:
相关推荐
c# 托盘程序 开源c# 托盘程序 开源c# 托盘程序 开源c# 托盘程序 开源c# 托盘程序 开源
C#日志托盘提示代码+源程序,本例主要是练习如何在Windows托盘处显示一个图标,支持右键... 可以通过这个程序学会托盘程序的编写方法。 文件中有源文件和安装文件,安装前请先安装.netFramework运行环境。vs2008制作
实例6 如何使用托盘控件 实例7 如何使用标签页控件 实例8 如何使用进度条控件 实例9 如何使用树视图控件 实例10 如何使用列表视图控件 实例11 如何使用多选列表框控件 实例12 如何使用图像控件 实例13 如何使用窗体...
实例004 任务栏托盘菜单 5<br>实例005 可以拉伸的菜单界面 5<br>实例006 菜级联菜单 7<br>1.2 工具栏设计 7<br>实例007 带背景的工具栏 7<br>实例008 浮动工具栏 8<br...
C#显示动态托盘图标示例,若积分不够,请到http://www.codefans.net/soft/22803.shtml...学习了一段C#编程,今天抽空写一个新手可参考的小程序,动态显示窗口任务栏右下角的托盘图标,可向指定IP发送消息,窗口可闪动。
本文通过向大家介绍一个.Net平台上用C#写的可以停放在任务栏上的图标程序(类似于Flashget、OICQ那种系统托盘图标)来和大家一起体验一下用C#编程的乐趣。
C#编程经验技巧宝典源代码,目录如下: 第1章 开发环境 1 <br>1.1 Visual Studio开发环境安装与配置 2 <br>0001 安装Visual Studio 2005开发环境须知 2 <br>0002 配置合适的Visual Studio 2005...
《Visual C# .NET精彩编程实例集锦》配套光盘文件【全】 目录回到顶部↑ 前言 第1章 控件操作 实例1 如何使用错误提醒控件 实例2 如何使用信息提示控件 实例3 如何使用菜单控件 实例4 如何使用工具栏控件 实例...
实例263 添加程序托盘 360 实例264 不出现在任务栏上的程序 360 实例265 怎样调用外部的EXE文件 361 实例266 关闭外部已开启的程序 362 7.10 程序运行 363 实例267 防止程序多次运行 363 实例...
实例263 添加程序托盘 360 实例264 不出现在任务栏上的程序 360 实例265 怎样调用外部的EXE文件 361 实例266 关闭外部已开启的程序 362 7.10 程序运行 363 实例267 防止程序多次运行 363 实例...
摘要:C#源码,菜单窗体,桌面日历,托盘菜单,鼠标穿透 一个综合了许多C#技巧的不错源码,带托盘菜单和半透明窗体特效的桌面精灵模块源代码,程序运行后第一个显示的是一个支持穿透的C#桌面日历,在托盘菜单中可选择...
3.如何在托盘中写入应用程序图标:鼠标右击右下角的图标可以选择自己喜欢的皮肤 4.对贪吃蛇可以设置蛇的颜色,也可以设置食物的颜色,还可以设置界面的背景颜色... 5.对打字游戏可以设置字体的大小,类型,游戏的背影...
实例263 添加程序托盘 360 实例264 不出现在任务栏上的程序 360 实例265 怎样调用外部的EXE文件 361 实例266 关闭外部已开启的程序 362 7.10 程序运行 363 实例267 防止程序多次运行 363 实例...
全书分6篇共25章,主要内容有C#开发环境的使用、C#语言基础应用、字符串处理技术、数组和集合的使用、面向对象编程技术、数据结构与算法、Windows窗体基础、特色窗体界面、窗体控制技术、MDI窗体和继承窗体、Windows...
编写一个验证用户和密码的登录窗口。要求: 1.登录窗口采用启动窗口,当用户名和密码正确(目前采用程序验证,用户名windows,密码:windows)... 2.采用系统托盘图标编程方式完成将窗口实现环形、方形、自动透明渐变。