python导入后如何修改文件

时间:2015-12-23 18:49:50

标签: python pyqt

我只是在失去了我所做的所有更改之后才意识到,一旦你回到QT设计师并在GUI上修改某些内容并将其转换回.py文件,所有更改都会被删除。以前的.py文件。

您是否建议我将其保存到新的.py文件中然后复制&粘贴或有更好的专业'这样做的方法?

编辑:

我现在设法导入文件而不是使用以下代码修改它:

from PyQt4 import QtCore, QtGui
from mysqlviewer import Ui_MainWindow

class MainWindow(QtGui.QMainWindow, Ui_MainWindow):

    def __init__(self, parent=None):
        super(MainWindow, self).__init__(parent)
        self.setupUi(self)



if __name__ == "__main__":
    import sys
    app = QtGui.QApplication(sys.argv)
    MainWindow = QtGui.QMainWindow()
    ui = Ui_MainWindow()
    ui.setupUi(MainWindow)
    MainWindow.show()
    sys.exit(app.exec_())

我现在只想将一个项目添加到UI的组合框中,但它没有显示。

这是我正在尝试的,

from PyQt4 import QtCore, QtGui
from mysqlviewer import Ui_MainWindow

class MainWindow(QtGui.QMainWindow, Ui_MainWindow):

    def __init__(self, parent=None):
        super(MainWindow, self).__init__(parent)
        self.setupUi(self)

        self.comboBox_2.addItem("Example Item")

if __name__ == "__main__":
    import sys
    app = QtGui.QApplication(sys.argv)
    MainWindow = QtGui.QMainWindow()
    ui = Ui_MainWindow()
    ui.setupUi(MainWindow)
    MainWindow.show()
    sys.exit(app.exec_())

2 个答案:

答案 0 :(得分:1)

请勿修改自动生成的文件。只需导入并继承它:

from PySide import QtCore, QtGui
# modify the import if needed
# from PyQt5 import QtCore, QtGui
# from PyQt4 import QtCore, QtGui

from ui import Ui_MainWindow

class MainWindow(QtGui.QMainWindow, Ui_MainWindow):
    """Main Window.
    """
    def __init__(self, parent=None):
        super(MainWindow, self).__init__(parent)
        self.setupUi(self)
        #  your code here

此处ui是自动生成的模块。下次更新时无需更改代码。

答案 1 :(得分:0)

我发现导入的最佳方式&使用该文件如下,这可能只是另一个答案。

import sys
from PyQt4 import QtCore, QtGui
from mysqlviewer import*

class Window(QtGui.QMainWindow):

     def __init__(self, parent=None):
        QtGui.QWidget.__init__(self, parent)
        self.ui = Ui_MainWindow()
        self.ui.setupUi(self)


        self.ui.comboBox.addItem("Example Item")

if __name__ == "__main__":

    app = QtGui.QApplication(sys.argv)
    viewer = Window()
    viewer.show()
    sys.exit(app.exec_())