pyside2 qmessagebox隐藏所有按钮,且定时关闭弹窗
时间: 2023-11-11 09:02:07 浏览: 153
Python中PyQt5/PySide2的按钮控件使用实例
你可以使用 `QMessageBox` 的 `setStandardButtons()` 方法将所有按钮设置为空列表,从而隐藏所有按钮。然后使用 `QTimer` 定时器来关闭弹窗,具体代码如下:
```python
from PySide2.QtWidgets import QApplication, QMessageBox
from PySide2.QtCore import QTimer
app = QApplication([])
msgBox = QMessageBox()
msgBox.setWindowTitle("Title")
msgBox.setText("Message")
msgBox.setStandardButtons([]) # 隐藏所有按钮
timer = QTimer()
timer.setSingleShot(True)
timer.timeout.connect(msgBox.close)
timer.start(5000) # 5秒后自动关闭弹窗
msgBox.exec_()
```
在上面的代码中,我们使用了 `setStandardButtons([])` 方法将所有标准按钮都隐藏了。然后我们创建了一个 `QTimer` 定时器,并将其设为单次触发模式。然后我们连接了 `timer.timeout` 信号到 `msgBox.close` 槽函数,以便在定时器超时后关闭弹窗。最后,我们启动了定时器并弹出了消息框。这里我们将定时器设为了 5 秒,你可以根据需要调整这个时间。
阅读全文