【发布时间】:2012-08-19 18:47:22
【问题描述】:
系统托盘区时钟视觉主题是MSDN中的documented,所以我想微软希望我们能够使用它。我想用它来绘制我的任务栏带的背景,以便更好地与托盘区域融合。当我尝试
OpenThemeData(NULL, L"CLOCK");
它总是失败。我发现获得该主题的唯一方法是找到实际的时钟窗口,并请求其主题:
使用
FindWindowEx定位具有Shell_TrayWnd类的窗口,然后定位其具有类TrayNotifyWnd的子窗口,然后定位该窗口的具有TrayClockWClass类的子窗口。调用 OpenThemeData 并传递实际时钟的窗口句柄。
显然,内部 Windows 窗口类名称没有记录。虽然上面的方法似乎可行,但我宁愿使用不那么脆弱的东西。
问题:有什么合理的方法可以获取托盘区域的时钟视觉主题吗?
【问题讨论】:
标签: winapi themes system-tray