如何使用 WinApi 创建 native “进度环”控件?
除了 Windows 8 现代 UI 应用程序的“ProgressRing”类之外,我在 MSDN 上找不到任何内容。
http://msdn.microsoft.com/en-us/library/windows/apps/windows.ui.xaml.controls.progressring
我希望能够在 Windows 8 上的纯 win32 应用程序中使用它并让它绘制“旋转球”。但在 Windows 7 上它应该是“蓝色圆圈”。我知道对于 Windows 7,蓝色图标是可以呈现的默认鼠标忙碌光标。对于 Windows 8,我找不到它使用的实际资源。
更新:我想将其绘制到窗口上而不是将其设置为鼠标光标,我应该澄清这一点 - 即使 Windows 8 上的忙碌光标不是“旋转球”动画。
最佳答案
您只需使用相应的光标调用 LoadCursor()
并将结果传递给 SetCursor()
(如果您想将其设置为光标)- 或者为自己的目的使用它。在前一种情况下,您需要的是 IDC_WAIT
。
像这样:
SetCursor(LoadCursor(NULL, IDC_WAIT));
请记住,Windows 会在某些情况下不断重置它 - 这可能会使它看起来不起作用。在您的情况下(尽管我对此表示怀疑)使用它来响应 WM_SETCURSOR
可能是合适的。
在后一种情况下(您只想根据自己的方式使用光标),您可以在从 获得的
.HCURSOR
上使用 DrawIcon()
>LoadCursor()
关于c++ - Windows 7 和 Windows 8 进程 "ring"控件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18593143/