したがって、QtDesignerに移動してUIを作成すると、.uiファイルとして保存されます。これをpythonファイルとして作成したり、Pythonで使用するにはどうすればよいですか?
コードで.uiを使用する別の方法は次のとおりです。
from PyQt4 import QtCore, QtGui, uic
class MyWidget(QtGui.QWidget)
...
#somewhere in constructor:
uic.loadUi('MyWidget.ui', self)
どちらのアプローチも優れています。アイコンなどにQtリソースファイル(非常に便利)を使用する場合は、それもコンパイルする必要があることを忘れないでください。
pyrcc4.exe -o ui/images_rc.py ui/images/images.qrc
uic
がインターフェイスをコンパイルすると、.pyファイルの末尾に「import images_rc」が追加されるため、リソースをこの名前でファイルにコンパイルするか、生成されたコードで名前を変更する必要があります。
Max's answer と Shriramana Sharmaのメーリングリストの投稿 を組み合わせて、mywindow.ui
ファイルにはQMainWindow
が含まれています(したがって、Qt DesignerのFile-New
ダイアログ)。
これはそれをロードするコードです:
import sys
from PyQt4 import QtGui, uic
class MyWindow(QtGui.QMainWindow):
def __init__(self):
super(MyWindow, self).__init__()
uic.loadUi('mywindow.ui', self)
self.show()
if __== '__main__':
app = QtGui.QApplication(sys.argv)
window = MyWindow()
sys.exit(app.exec_())
Pyuicツール(site-packages\pyqt4\bin)を使用して、UIファイルからpythonファイルを生成する必要があります)
pyuic form1.ui > form1.py
pyqt4で
pyuic4.bat form1.ui > form1.py
その後、form1をスクリプトにインポートできます。
この記事はとても役に立ちました。
http://talk.maemo.org/archive/index.php/t-43663.html
その記事から、.uiファイルを作成して.pyファイルに変更するアクションについて簡単に説明します。
ファイルが作成されて保存されました。次に、pyuicを使用してPythonコードを生成します!
これが誰かを助けることを願っています。
次のコードでPyQt5でuic
を使用することもできます。
from PyQt5 import uic, QtWidgets
import sys
class Ui(QtWidgets.QDialog):
def __init__(self):
super(Ui, self).__init__()
uic.loadUi('SomeUi.ui', self)
self.show()
if __== '__main__':
app = QtWidgets.QApplication(sys.argv)
window = Ui()
sys.exit(app.exec_())
以下のコマンドを使用して、.uiファイルを実行可能pythonファイルに変換できます。
pyuic4 -x form1.ui > form1.py
これでpythonファイルを
python3(whatever version) form1.py
このファイルをインポートして使用できます。
私の意見では、先に述べたように最初に.pyにエクスポートするほうがきれいです。
pyuic4 foo.ui > foo.py
そして、コード内でそれを使用します(例:main.py
)、 好む:
from foo import Ui_MyWindow
class MyWindow(QtGui.QDialog):
def __init__(self):
super(MyWindow, self).__init__()
self.ui = Ui_MyWindow()
self.ui.setupUi(self)
# go on setting up your handlers like:
# self.ui.okButton.clicked.connect(function_name)
# etc...
def main():
app = QtGui.QApplication(sys.argv)
w = MyWindow()
w.show()
sys.exit(app.exec_())
if __== "__main__":
main()
これにより、qt-designerを使用してコードを読み取らない他のユーザーに機能を提供し、機能コードをfoo.py
デザイナーによって上書きされる可能性があります。上記のように、ui
クラスを介してMyWindow
を参照するだけです。
このようなUIファイルをコンパイルできます
pyuic4 -x helloworld.ui -o helloworld.py
.uiファイルを.pyファイルにコンパイルするために、次のことを行いました。
python pyuic.py form1.ui > form1.py
Att。
pyqt5で、uiファイルから.pyファイルに変換します
pyuic5.exe youruifile.ui -o outputpyfile.py -x
Anaconda3(2018年9月)およびQTデザイナー5.9.5の使用。 QTデザイナーで、ファイルをUIとして保存します。 Anacondaプロンプトを開きます。ファイルを検索します:cd C:....(ファイルのアクセスパスをコピーして貼り付けます)。次に、pyuic5 -x helloworld.ui -o helloworld.py(helloworld =ファイルの名前)と書きます。入る。 Spyderを起動します。ファイル.pyを開きます。