我正在尝试用C#编写一个程序来监视应用程序的处理器时间。我想在这个程序中有一个功能,其中任务栏图标实际上是一个代表处理器时间的数字(就像coretemp所拥有的那样)。我该如何做这样的事情?
答案 0 :(得分:2)
您需要使用System.Drawing
命名空间中的类。
创建Bitmap
,使用Graphics.FromImage
进行绘制,然后拨打Icon.FromHandle(myBitmap.GetHicon())
。
然后,您可以将图标设置为表单的Icon
属性。
编辑:像这样:
using (var image = new Bitmap(16, 16))
using (var g = Graphics.FromImage(image)) {
g.DrawString(...);
myForm.Icon = Icon.FromHandle(image.GetHicon());
}
您可以在计时器中运行此程序以不断更新图标。
您可以像这样获得CPU使用率:
int usage;
using (var cpu = new PerformanceCounter("Processor", "% Processor Time", "_Total")) {
cpu.NextValue(); //First value is 0
usage = cpu.NextValue();
}