C++ NetUIHWND和DirectUIHWND

C++ NetUIHWND和DirectUIHWND,c++,winapi,user-interface,C++,Winapi,User Interface,使用Spy++工具,似乎有些Microsoft应用程序使用NetUIHWND和DirectUIHWND窗口类;e、 g:Word 2010的功能区似乎是一个Netuihnd,而Windows Live Messenger窗口似乎是一个Directuihnd 这些窗口类似乎拥有一些很酷的图形(带有阴影、渐变等);有可能在我们自己的Win32 C++应用程序中使用这些窗口类吗?有关于它们的文档吗?不确定Messenger UI,但您可以在自己的应用程序中使用ribbon控件 关于WTL: 关于MF

使用Spy++工具,似乎有些Microsoft应用程序使用NetUIHWNDDirectUIHWND窗口类;e、 g:Word 2010的功能区似乎是一个Netuihnd,而Windows Live Messenger窗口似乎是一个Directuihnd


这些窗口类似乎拥有一些很酷的图形(带有阴影、渐变等);有可能在我们自己的Win32 C++应用程序中使用这些窗口类吗?有关于它们的文档吗?

不确定Messenger UI,但您可以在自己的应用程序中使用ribbon控件

  • 关于WTL:
  • 关于MFC:

  • 是的,它已经存在了一段时间了。但是它在Windows7中得到了特别多的使用。不幸的是,他们把这件事保密,它是没有文件的。您可以尝试对其进行反向工程,使用ListView作为它可能执行的操作指南。但您的代码几乎肯定会在下一版本的Windows中崩溃。我认为这就是不记录它的意义所在,他们需要一些不必保持向后兼容的东西,以便能够改进操作系统的外观和感觉。

    NetUIHWND和DirectUIHWND是不同GUI工具集的Win32类类型。 从Win32的角度来看,它们是一个自绘制的面板

    因此,您不会直接使用这些类,而是使用其他GUI工具集来构建UI。

    使用


    无需对这件事进行反向工程,您可以使用Microsoft Active Accessibility API枚举此类结构。

    知道是否有人对其进行了反向工程吗?我真的很想尝试一下:p这只允许你访问或检查其他应用程序中托管的UI实例,不允许你自己使用或托管UI,这正是OP所要求的;蒂姆·罗宾逊的答案是正确的。