0

我正在 Ubuntu 20.04 上编写 Qt5 PySide2 脚本。

我想让窗口的一部分透明,比如一个框架,这样我就可以看到窗口下方的其他窗口程序(如 Firefox、LibreOffice 等)。(如果这是不可能的,那么如果整个窗口都是半透明的就可以了,我已经知道该怎么做,但我还需要在旁边显示一些按钮和其他小部件并能够与它们交互)。我能够做到这一点

Qt.WA_TranslucentBackground

在我的应用程序是透明的(部分(我喜欢)或整个窗口(这是完全可以接受的),无论解决方案如何)的地方,我还需要能够与下面的程序进行交互。我能够做到这一点

Qt.WindowTransparentForInput

当我尝试将这两个功能结合起来时,问题就出现了。在第一种情况下,我得到一个透明窗口,但无法与下面的内容交互。在第二种情况下,我得到一个不透明的窗口,但我可以与下面的内容进行交互,尽管是以盲目的方式。

我看到通过添加Qt.FramelessWindowHint解决这两个问题,但是我不能再移动窗口,我还想保留标题窗口的装饰,比如 x 用于关闭窗口或 - 用于最小化它。

我的最终目标是在我的程序中在透明的 Qt5 画布上绘制箭头,最终用户可以看到箭头,可以看到下面的网页并可以与该网页进行交互。但不仅是浏览器,我希望残障人士和老年人也能在其他程序中获得视觉辅助。正是通过这种方式,我宁愿只有部分 GUI 是透明的(我已经说过框架),因为用户应该始终看到程序位于其他应用程序之上。

谢谢

在此处输入图像描述 在此处输入图像描述

4

0 回答 0