Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/293.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 获取任务栏的电池和电话信号指示图标,并绘制到一个图片框中_C#_Windows Mobile_Compact Framework_Taskbar - Fatal编程技术网

C# 获取任务栏的电池和电话信号指示图标,并绘制到一个图片框中

C# 获取任务栏的电池和电话信号指示图标,并绘制到一个图片框中,c#,windows-mobile,compact-framework,taskbar,C#,Windows Mobile,Compact Framework,Taskbar,有没有办法让任务栏的电池和电话信号指示图标,然后画进一个图片盒或什么的 为什么我需要这个 我需要所有可用的屏幕空间,以便最大化所有窗体,并覆盖windowsmobile任务栏。但是,我必须以几种形式显示有关电池e手机信号强度的信息 我知道如何获取它们的值,比如systeminformation.phonesignalstrength,但我想要的是当前图标,所以我不需要担心它们的值。这只是用户的一个视觉信息 在最后一种情况下,如果这不可能,那么如何从windowsmobile外壳中获取这些图标,因

有没有办法让任务栏的电池和电话信号指示图标,然后画进一个图片盒或什么的

为什么我需要这个

我需要所有可用的屏幕空间,以便最大化所有窗体,并覆盖windowsmobile任务栏。但是,我必须以几种形式显示有关电池e手机信号强度的信息

我知道如何获取它们的值,比如systeminformation.phonesignalstrength,但我想要的是当前图标,所以我不需要担心它们的值。这只是用户的一个视觉信息

在最后一种情况下,如果这不可能,那么如何从windowsmobile外壳中获取这些图标,因此我将自己绘制它们,处理它们假定的每个不同状态/值。这是我不想做的


提前谢谢,我的英语很差,很抱歉。

已经有类似的例子了。 我会粘贴代码,但它是在C++,这将是巨大的粘贴在这里所有: 您需要将C++代码转换为C.< 你需要- 1.找到系统托盘的手柄。 2.获取托盘中正确的按钮数。 3.对于每个按钮。。。 读取按钮数据缓冲区。 b从缓冲区中获取补液数据。 c获取与此TRAYDATA对象实例相关的图标。


另一个非常好的文章链接

大多数任务栏图像都以.BMP文件的形式存储在\Windows目录中。例如,在Windows Mobile 6中,电池映像位于\Windows\battery.bmp中。您可以使用Windows Mobile Device Emulator和远程文件查看器将文件复制到您的电脑。不同版本的Windows Mobile中的图像有时会有所不同。

我确信您指的是“系统托盘应用程序中的图标”:
ImageList Image16List = new ImageList();
...
ICONINFO  iinfo;
if(GetIconInfo(tray.hIcon,&iinfo) != 0) {
    int iconindex = Image16List.Add(tray.hIcon);
    //do stuff
}