pyqt6 报错: type object 'Qt' has no attribute 'WA_TranslucentBackground'
时间: 2023-10-10 15:11:59 浏览: 539
PyQt学习随笔:自定义信号连接时报AttributeError: ‘PyQt5.QtCore.pyqtSignal’ object has no attribute ‘connect’
5星 · 资源好评率100%
这个错误通常是因为 `WA_TranslucentBackground` 这个属性在PyQt6中被移除了。在PyQt6中,可以使用 `Qt.WindowType.FramelessWindowHint` 和 `Qt.WindowType.WindowTransparentForInput` 两个属性来实现透明窗口。以下是一个简单的示例:
```python
from PyQt6.QtWidgets import QApplication, QWidget
from PyQt6.QtCore import Qt
class MyWidget(QWidget):
def __init__(self):
super().__init__()
# 设置窗口属性
self.setWindowFlag(Qt.WindowType.FramelessWindowHint)
self.setAttribute(Qt.WidgetAttribute.WA_TranslucentBackground)
self.setWindowFlag(Qt.WindowType.WindowTransparentForInput)
if __name__ == '__main__':
app = QApplication([])
widget = MyWidget()
widget.show()
app.exec()
```
你可以尝试将你的代码中的 `WA_TranslucentBackground` 替换为 `Qt.WidgetAttribute.WA_TranslucentBackground` ,并使用上述代码中的方法来设置窗口的属性。
阅读全文