pyqt在另一个py文件中调用ui

时间:2016-06-16 08:50:58

标签: python qt pyqt

我使用qtDesigner和uic来获取ui.py文件,我想在Output.py文件中调用ui变量。我导入返回ui的get_ui函数

当我运行demo时出现Nameerror。可能是什么问题?

提前致谢! ui.py

1 个答案:

答案 0 :(得分:0)

QtDesigner的导出有一个类定义(类似于此):

class Ui_Form(object):
(...)

ui.py导入另一个文件时,请执行以下操作:

from PyQt4.QtGui import QDialog
from ui import Ui_Form  # ui because of ui.py, Ui_Form because of the class name

class AppWindow(QDialog):

    def __init__(self):
        super().__init__()
        self.ui = Ui_Form()
        self.ui.setupUi(self)
        self.show()
        # more definitions (buttons etc.) come here, example follows:
        self.ui.ExistingButton.clicked.connect(self.pressed_okay)

    def pressed_okay(self):
        self.accept()

if __name__ == "__main__":
    app = QApplication(sys.argv)
    w = AppWindow()
    w.show()
    sys.exit(app.exec_())

这是让GUI运行的最低限度。