【问题标题】:pyQT4: How to open a window from another windowpyQT4:如何从另一个窗口打开一个窗口
【发布时间】:2012-06-14 19:41:28
【问题描述】:

我试图在单击按钮时打开一个窗口 (QWidget)。我的问题是,无论我尝试了什么,当我点击按钮时,第二个窗口都不会出现。这两个窗口是使用 QTDesigner 创建的。 这是一个小 sn-p 解释我正在尝试做的事情:

from PyQt4.QtGui import *
from PyQt4.QtCore import *
from win1 import *
from win2 import *
import sys

class win1(QWidget, Ui_Win1):
  def __init__(self, parent = None):
    self.parent = parent
    QWidget.__init__(self)
    self.setupUi(parent)
    self.connect(self.pushButton, SIGNAL("clicked()"), self.on_btn_clicked)

  def on_btn_clicked(self):
    self.child = win2(self.parent)
    self.child.show()

class win2(QWidget, Ui_Win2):
  def __init__(self, parent = None):
    QWidget.__init__(self)
    self.setupUi(parent)

def main(args):
  app = QApplication(args)
  win = QWidget()
  a = win1(win)
  win.show()
  result = app.exec_()

if __name__=="__main__":
    main(sys.argv)

我在这里缺少什么? 谢谢。

【问题讨论】:

    标签: window pyqt4 qt-designer


    【解决方案1】:

    不确定,但有两个随机想法:

    如果向on_btn_clicked 添加打印语句,单击按钮时是否看到任何内容?这将诊断它是否是事件触发问题

    setupUI(parent)命令改成setupUI(self)能用吗?

    【讨论】:

      猜你喜欢
      • 2016-09-03
      • 1970-01-01
      • 2018-05-11
      • 1970-01-01
      • 1970-01-01
      • 2012-12-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多