Skip to content

Commit 489e98d

Browse files
committed
Add 03-12-05-05
QMessageBox-信号
1 parent be2c13d commit 489e98d

File tree

1 file changed

+47
-0
lines changed

1 file changed

+47
-0
lines changed
Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
import sys
2+
3+
from PySide6 import QtWidgets
4+
5+
"""
6+
QMessageBox 信号
7+
8+
除继承自父类的信号,QMessageBox只有一种信号:
9+
10+
.buttonClicked(button: QAbstractButton) 当信息提示框中的按钮被点击时发射此信号,按钮作为参数传出
11+
12+
"""
13+
14+
15+
class MyWidget(QtWidgets.QWidget):
16+
def __init__(self, *args, **kwargs):
17+
super().__init__(*args, **kwargs)
18+
self.setWindowTitle("QMessageBox-信号")
19+
self.resize(800, 600)
20+
self.setup_ui()
21+
22+
def setup_ui(self) -> None:
23+
"""设置界面"""
24+
25+
# 创建对话框
26+
message_box = QtWidgets.QMessageBox(
27+
QtWidgets.QMessageBox.Warning,
28+
"这是一个消息提示框",
29+
"您不能在关闭模态对话框前操作其他窗口!",
30+
QtWidgets.QMessageBox.Ok | QtWidgets.QMessageBox.Cancel,
31+
self,
32+
)
33+
34+
# 测试信号:将获取到的按钮的文本打印到终端
35+
message_box.buttonClicked.connect(lambda btn: print(btn.text())) # type: ignore
36+
37+
# 在主界面上弹出对话框
38+
pop_btn = QtWidgets.QPushButton("弹出对话框", self)
39+
pop_btn.move(200, 200)
40+
pop_btn.clicked.connect(message_box.open) # type: ignore
41+
42+
43+
if __name__ == "__main__":
44+
app = QtWidgets.QApplication(sys.argv)
45+
window = MyWidget()
46+
window.show()
47+
sys.exit(app.exec())

0 commit comments

Comments
 (0)