繁体   English   中英

Windows上Qt中的无边框窗口,支持本机功能:aero snap,DWM调整大小和最小化

[英]Borderless window in Qt on Windows which supports native features: aero snap, DWM resize and minimization

我正在尝试在Windows上的Qt中创建一个无边框窗口,它支持本机功能:aero snap,DWM调整大小和最小化,抖动等。例如Office 2013或Visual Studio 2012.但它们是用wpf编写的。 在wpf和纯WinApi中有很多例子,但是我找不到任何Qt例子。

最近我发现了暴雪的Battle.net App( 截图 )。 他们正在使用QT 4.8.5,他们的主窗口在我的应用程序中看起来和行为完全符合我的要求。

有谁知道这是怎么做到的吗?

谢谢你的帮助。

我找到了解决这个问题的方法。

我没有使用Qt主窗口,而是创建了一个简单的WinAPI无边框窗口,就像在这个SO讨论中一样 然后我从QtWinMigrate项目中添加了QWinWidget,并用它填充了窗口。

因此,主窗口和可调整大小的边缘由WinAPI处理,主窗口内的所有内容都由QWinWidget处理。 使用QWinWidget,您可以在任何其他Qt应用程序中创建Qt gui。

这是GitHub上的一个小示例项目。

也许这可能对你有帮助,Windows特定的Qt类WinExtras

http://qt-project.org/doc/qt-5/qtwin.html

http://qt-project.org/doc/qt-5/qtwinextras-module.html

此外,您可以使用QT Quick 2.0设计类似于WPF的UI

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM