如何使用Qt绘制自定义形状的窗口,并将当前的Windows主题颜色/效果应用于该窗口



是否可以在Qt中绘制一个自定义形状的窗口,该窗口继承了当前系统主题的颜色和透明度(玻璃)效果。最终我需要它看起来&感觉就像用户的任务栏调整到他的主题。就像这个概念一样。我意识到可能不可能实现如此完美的集成,但至少要制作一个与任务栏相同的自定义背景(玻璃外观和感觉),我相信这是可以实现的。

部分答案在类似的问题中——用Qt显示半透明/不规则形状的窗口。但仍然不确定如何读取系统主题信息并将其应用于QPainter。

棘手的部分是左边的斜坡。我敢打赌,你可以在窗口上设置一个更高的标题栏,并将窗口的其余部分设置为0高度,这样窗口就完全是一个标题栏,但这种坡度需要渲染功能,而在Windows上根本不存在这些功能。

此外,您希望您的窗口将任务栏的斜面隐藏在窗口出现的位置。这可能也不可能,因为你的窗口将是半透明的,所以它将无法阻挡正常任务栏的渲染斜面。

对不起。可能需要重新开始你的设计。

最新更新