Python QT。来自另一表格的表格

时间:2016-09-28 13:40:47

标签: python qt pyqt

首先我开始编程:)

我在QT Designer Form(MainForm)中创建并在按钮中添加功能以打开新表单。我这样做了 How do I open sub window after I click on button on main screen in PyQt4(First anwser)但是当我编译时,我得到了:

  

' Ui_V1'对象没有属性' show'

问题出在哪里。 谢谢:))

这是main form.py中的代码的一部分:

from V1 import Ui_V1
#V1 class and form
self.pushButton_5.clicked.connect(lambda: self.openV1())
def openV1(self):
    window=Ui_V1()
    window.show()

好的,我通过观看Yt:D

上的视频解决了这个问题
def openV1(self):
    self.V1Window=QtGui.QMainWindow()
    self.ui= Ui_V1()
    self.ui.setupUi(self.V1Window)
    self.V1Window.show()

它有效:)

2 个答案:

答案 0 :(得分:0)

您是否已将代码编译为python?默认情况下,它将是一个ui文件。您可以使用pyuic4.exe文件。

c:\Python27\Lib\site-packages\PyQt4\something> pyuic4.exe full/path/to/input.ui -o full/path/to/output.py

答案 1 :(得分:0)

查看生成的文件。通常pyuic4会生成一个不是QtWidget的类,它只是一个带有setupUI方法的工厂。

我通常这样做:

class MyForm(QtGui.QWidget, Ui_V1):
    def __init__(self, *args):
        QtGui.QWidget.__init__(self, *args)
        self.setupUi(self)

然后,您可以将MyForm用作常规窗口小部件。