我有一个问题,我有两个Qt应用程序重叠在一起。顶部的Qt应用程序需要一个透明孔来显示其后面的Qt应用程序。有什么办法可以实现这个功能吗?或者在Qt库中是否有任何例子可以帮助我?
进一步说明:
如果我在Windows机器上运行Qt应用程序,我想通过透明的孔看到我的桌面背景。
我找到了windowOpacity属性。不幸的是,该属性会改变整个应用程序的不透明度,而不仅仅是应用程序的一部分。 为什么您需要两个Qt应用程序?只需在同一应用程序中绘制它们即可? 由于安全原因,此项目不可能这样做,应用程序必须是单独的。要将两个应用程序分开,它们之间只有有限的通信,并且不能使用相同的QT应用程序。
编辑:由于我的问题被删除,因为不够清楚,这里有3个我试图实现的示例。 示例1: 在这里,您可以看到我希望如何显示应用程序1。 2个正方形,一个大正方形(蓝色),它不透明,第二个正方形(白色)在第一个正方形内部,它是透明的(在图片中很难显示透明度)。
示例2: 在这里,您可以看到我希望如何显示两个应用程序。在透明正方形后面显示第二个应用程序。当它们对齐时,没有太多可见的东西,它只是看起来像两个应用程序相互叠加。
示例3: 在这里,您可以看到第二个应用程序未正确对齐时应用程序应该如何交互。第二个应用程序只能通过第一个应用程序的透明部分看到。
重复一遍我的原始问题:
是否可能创建具有透明孔的Qt应用程序?
我的后续问题是:
是否有任何在Qt库或其他任何地方实现这种功能的示例?
我找到了windowOpacity属性。不幸的是,该属性会改变整个应用程序的不透明度,而不仅仅是应用程序的一部分。 为什么您需要两个Qt应用程序?只需在同一应用程序中绘制它们即可? 由于安全原因,此项目不可能这样做,应用程序必须是单独的。要将两个应用程序分开,它们之间只有有限的通信,并且不能使用相同的QT应用程序。
编辑:由于我的问题被删除,因为不够清楚,这里有3个我试图实现的示例。 示例1: 在这里,您可以看到我希望如何显示应用程序1。 2个正方形,一个大正方形(蓝色),它不透明,第二个正方形(白色)在第一个正方形内部,它是透明的(在图片中很难显示透明度)。
![示例1](https://istack.dev59.com/KeMk1.webp)
![示例2](https://istack.dev59.com/C1sIG.webp)
![示例3](https://istack.dev59.com/qmNqZ.webp)
QWidget::createWindowContainer
将其嵌入到应用程序1中呢? - G.M.