请帮我用pyqt写一个windows右下角弹窗的代码
时间: 2023-11-27 17:51:32 浏览: 117
好的,以下是一个简单的示例代码:
```python
from PyQt5 import QtWidgets, QtCore
class PopupWindow(QtWidgets.QWidget):
def __init__(self, message):
super().__init__()
self.message = message
self.initUI()
def initUI(self):
self.setGeometry(0, 0, 300, 100) # 设置弹窗大小
self.setWindowTitle('Popup') # 设置弹窗标题
# 弹窗文本标签
label = QtWidgets.QLabel(self.message, self)
label.setAlignment(QtCore.Qt.AlignCenter)
label.setStyleSheet("font-size: 16px;")
# 关闭弹窗按钮
close_button = QtWidgets.QPushButton('Close', self)
close_button.setStyleSheet("font-size: 12px;")
close_button.clicked.connect(self.close)
# 窗口布局
layout = QtWidgets.QVBoxLayout(self)
layout.addWidget(label)
layout.addWidget(close_button)
self.setLayout(layout)
# 设置窗口显示位置
desktop = QtWidgets.QApplication.desktop()
screen_rect = desktop.screenGeometry()
x = screen_rect.width() - self.width() - 10 # 右下角
y = screen_rect.height() - self.height() - 10 # 右下角
self.move(x, y)
# 设置动画效果
self.animation = QtCore.QPropertyAnimation(self, b"windowOpacity")
self.animation.finished.connect(self.close)
self.animation.setDuration(2000) # 持续2秒
self.animation.setStartValue(0.0)
self.animation.setEndValue(1.0)
self.animation.start()
self.show()
if __name__ == '__main__':
app = QtWidgets.QApplication([])
message = 'Hello, World!'
popup = PopupWindow(message)
app.exec_()
```
这个弹窗类继承自 `QWidget`,使用了 PyQt5 的布局和动画效果。你可以根据自己的需要修改弹窗大小、文本内容、持续时间等属性。在 `__main__` 函数中创建一个 `PopupWindow` 实例即可显示弹窗。
阅读全文