【发布时间】:2012-02-22 20:33:22
【问题描述】:
我需要知道如何在用户单击按钮时弹出对话框。
我对 Python 和 PyQt/QtDesigner 都比较陌生。我只在其中使用了大约一个月,但我认为我掌握得很好。
这是我所拥有的:我在 QtDesigner 中设计的主对话框(它是应用程序的主要部分)。我使用 pyuic4easy 将 .ui 转换为 .py。
这就是我想要做的:在 QtDesigner 中设计一个新对话框,并以某种方式使其在用户单击第一个(主)对话框上的按钮时弹出。
这是我的主对话框的代码:
import sys
from PyQt4.QtCore import *
from loginScreen import *
class MyForm(QtGui.QDialog):
def __init__(self, parent=None):
QtGui.QWidget.__init__(self, parent)
self.ui = Ui_Dialog()
self.ui.setupUi(self)
QtCore.QObject.connect(self.ui.pushButton, QtCore.SIGNAL('clicked()'), self.popup)
...
... Some functions ...
def popup(self):
#Pop-up the new dialog
if __name__ == "__main__":
app = QtGui.QApplication(sys.argv)
myapp= MyForm()
myapp.show()
sys.exit(app.exec_())
如您所见,我已将第一个按钮连接到一个名为“popup”的方法,该方法需要填写代码以使我的第二个窗口弹出。我该怎么做呢?请记住,我已经在 QtDesigner 中设计了第二个对话框,我不需要创建新的。
感谢大家的帮助!
【问题讨论】:
标签: python dialog pyqt qt-designer