C# 系统托盘编程

平台:Microsoft Visual Studio 2005
类库:.NET Framework 2.0 (Windows Form)
语言:C#

我们知道,写一个Windows Form程序,主要就是写一个自己的Form类,不妨取名为MyForm,继承于类库中的Form类。
public  class MyForm : Form
{

}

接下来,主要说明一下关于系统托盘的几个控件的导入和编写(其他的按钮等不再说明)。
首先,为了不在任务栏上看到程序的标签,我们先把该标签隐藏。(没有特别说明,下面所有的语句都加入到MyForm的初始化函数中)
this.ShowInTaskbar = false;

然后再来添加系统托盘上的图标。系统托盘图标的空间名为NofityIcon,我们在MyForm类中添加一个私有成员,命名为 notifyIcon1。

只是这样还不能显示图标,我们还需要给程序加载一个系统托盘图标(notifyIcon1.Icon的图标)。

然后我们可以通过notifyIcon1的成员属性Visible来控制是否显示图标。如果显示:
this.notifyIcon1.Visible = true;

当我们把鼠标移动到图标上时,可以出现浮动框。如果只是出现静态文字。我们只需简单的设置notifyIcon1的Text属性。
this.notifyIcon1->Text = “这里为要显示的文字”;

如果要显示更为详细的信息,我们可以通过设置BalloonTipIcon,BalloonTipText,BalloonTipTitle属性来控制。再调用ShowBalloonTip方法来显示。
如果要动态显示,我们可以为上述的几个属性和方法写成一个事件,各属性值为随时取得的所需值。这里不作详细讨论。

基本功能实现了,现在我们需要右键单击图标时,出现一个快捷菜单,这个是程序中常用的功能。
首先,我们建立一个快捷菜单,比如叫ctMenu,作为MyForm的私有成员。
private  ContextMenuStrip ctMenu;

然后我们为notifyIcon1加载该菜单。
this.notifyIcon1.ContextMenuStrip = this.ctMenu;

接下来就是完成这个快捷菜单。这里说下最基本的操作,就是添加菜单。比如我们要添加三个一级菜单。
首先是建立三个菜单。
private ToolStripMenuItem 菜单1;
private ToolStripMenuItem 菜单2;
private ToolStripMenuItem 菜单3;

然后我们加载这些菜单。
this.ctMenu.Items.AddRange(new ToolStripItem[3] {this.菜单1, this.菜单2, this.菜单3});

如果我们 [菜单1] 还有两个二级菜单。我们可以这么做,先定义两个菜单。
private ToolStripMenuItem 菜单11;
private ToolStripMenuItem 菜单12;

然后在加载到菜单1上面。
this.菜单1.DropDownItems.AddRange(new  ToolStripItem[2] {this.菜单11, this.菜单12});

这些是Windows Form中写系统托盘程序的主要方法,当然要完善这个程序,还是要做很多工作的。

转载于:https://www.cnblogs.com/skl99/archive/2010/03/08/1680986.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值