我需要知道如何在用户单击按钮时弹出一个对话框。在Python中显示弹出窗口(PyQt4)
我对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_())
因此,大家可以看到,我已经连接的第一个按钮到一个名为“弹出式”的方法,这需要填写的代码,使我的第二个窗口弹出。我如何去做这件事?记住我已经在QtDesigner中设计了我的第二个对话框,而且我不需要创建一个新的对话框。
感谢您的帮助!
你忘了保持当你show()'对话框时参考。 – ekhumoro 2012-01-31 17:31:51
啊,对。固定。谢谢 – Avaris 2012-01-31 18:13:30
谢谢Avaris! 我能够做出弹出式显示,但它与弹出对话框的内容相同。我如何解决这个问题?另外,我可以设计PyQt中新弹出的窗口,并让我的代码弹出一个,而不是? 这是我的代码看起来,新的对话框: '类MyPopUp(QtGui.QDialog): 高清__init __(自我,父母=无): QtGui.QDialog .__的init __(自我,父母) 自我。 ui = Ui_Dialog() self.ui.setupUi(self)' – user1179452 2012-02-07 21:53:01