有没有办法将文字叠加到NotifyIcon上?

时间:2009-10-15 19:43:33

标签: c# .net notifyicon

我目前正在编写一个具有NotifyIcon的应用程序,并且我正在尝试找到一种将文本叠加到其上的方法。因此,例如,如果图标指示打开的文件数,则它具有图标加上顶部的数字。

有办法吗?我已经看到NotifyIcon的实例仅仅是文本,例如SpeedFan。

任何建议或参考将不胜感激。

3 个答案:

答案 0 :(得分:6)

添加对System.Drawing的引用。以下代码取自我的某个应用程序,它在图标上应用2

Graphics canvas;
Bitmap iconBitmap = new Bitmap(16, 16);
canvas = Graphics.FromImage(iconBitmap);

canvas.DrawIcon(YourProject.Resources.YourIcon, 0, 0);

StringFormat format = new StringFormat();
format.Alignment = StringAlignment.Center;

canvas.DrawString(
    "2",
    new Font("Calibri", 8, FontStyle.Bold),
    new SolidBrush(Color.FromArgb(40, 40, 40)),
    new RectangleF(0, 3, 16, 13),
    format
);

notifyIcon.Icon = Icon.FromHandle(iconBitmap.GetHicon());

答案 1 :(得分:1)

我最好的猜测是动态生成图标。你应该可以在System.Drawing中使用一些东西。我对命名空间并不熟悉,所以我不能举例。不过我确信其他人可以。

答案 2 :(得分:0)

好吧,我没有找到一个好方法,但最终没关系。我最终使用了BalloonTip,它允许我提供信息。