接下来这个专题介绍PyQt的一些内容
教程翻译自:
https://www.tutorialspoint.com/pyqt/pyqt_introduction.htm
由于本人也是学习状态,翻译可能不准确,请及时指出,我会很快修正
一些关键字会直接使用英文
目前该专题为纯理论,实际操作在完成后有演示
PyQt版本: PyQt4
1. 什么是QDialog
对话框类一般用来收集用户的响应
它能配置成如下2个形式:
Modal
他会阻塞(Block)父窗口,即取消前无法操作父窗口
Modeless
他可以被跳过(bypass)而在后台运行
他们由windowModality 属性决定
2.应用举例
按Escape键时,对话框由 QDialog.reject() 方法摧毁
如下代码当点击PushButton时弹出对话框
对话框无法在后台运行因为属性为Model
点击
代码语言:javascript复制import sys
from PyQt4.QtGui import *
from PyQt4.QtCore import *
def window():
app = QApplication(sys.argv)
w = QWidget()
b = QPushButton(w)
b.setText("Hello World!")
b.move(50,50)
b.clicked.connect(showdialog)
w.setWindowTitle("PyQt Dialog demo")
w.show()
sys.exit(app.exec_())
def showdialog():
d = QDialog()
b1 = QPushButton("ok",d)
b1.move(50,50)
d.setWindowTitle("Dialog")
d.setWindowModality(Qt.ApplicationModal)
d.exec_()
if __name__ == '__main__':
window()