c++ - Windows 7 和 Windows 8 进程 "ring"控件

标签 c++ winapi windows-8 windows-7

如何使用 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/

相关文章:

c++ - 我可以在 LockFileEx 之后复制文件吗?

c++ - C++ Azure 移动库中的更新功能损坏

javascript - 在 win8 应用程序中设置 <video> 元素的样式 (html/js)

c++ - 比较 std::vector 的指针来检查相等性是否安全?

c++ - 创建类似抽屉的窗口

c++ - 忽略零权重边的 Boost 图 BFS

c++ - 检测鼠标何时离开我的应用程序

c++ - 如何使用带有最小化主窗口的 CreateProcess 启动控制台应用程序

windows-8 - "Unable to add dynamic content"使用 AngularJS for Windows Store App,但它有效

c++ - 外部存储器上的 QDataStream?