Qt for Python UiFiles: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
No edit summary |
||
Line 53: | Line 53: | ||
</ui> | </ui> | ||
</source> | </source> | ||
Now, using PySide2 we will load the ui file and start our application: | |||
we | |||
<syntaxhighlight lang="python" line='line'> | |||
# main.py | |||
import sys | import sys | ||
from | from PySide2.QtUiTools import QUiLoader | ||
from PySide2.QtWidgets import QApplication | |||
from PySide2.QtCore import QFile | |||
if __name__ == "__main__": | |||
app = QApplication(sys.argv) | |||
file = QFile("mainwindow.ui") | |||
file.open(QFile.ReadOnly) | |||
loader = QUiLoader() | |||
window = loader.load(file) | |||
window.show() | |||
sys.exit(app.exec_()) | |||
</syntaxhighlight> | |||
</ | |||
And to run | And to run it, just a <code>python main.py</code> will do the job. |
Revision as of 14:28, 18 April 2018
Attention: a port of PySide to Qt 5.x started in 2014, the progress and more details about this project can be found under PySide 2
This page describes the use of Qt Creator to create Graphical Interfaces for your PySide Software. You will need Qt Creator, Pyside and PySide-Tools (pyuic and pyrcc).
If you don't know how to use Qt Creator, please go to Qt Creator Widget Tutorial .
At Qt Creator, create a new Qt Design Form, choose "Main Window" for template. And save as "mainwindow.ui" . Add a Qlabel to the center of the centralwidget.
And your mainwindow.ui
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>MainWindow</class>
<widget class="QMainWindow" name="MainWindow">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>82</width>
<height>64</height>
</rect>
</property>
<property name="windowTitle">
<string>MainWindow</string>
</property>
<widget class="QWidget" name="centralwidget">
<layout class="QGridLayout" name="gridLayout">
<item row="0" column="0">
<widget class="QLabel" name="label">
<property name="text">
<string>Hello World!</string>
</property>
</widget>
</item>
</layout>
</widget>
<widget class="QMenuBar" name="menubar">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>82</width>
<height>21</height>
</rect>
</property>
</widget>
<widget class="QStatusBar" name="statusbar"/>
</widget>
<resources/>
<connections/>
</ui>
Now, using PySide2 we will load the ui file and start our application:
# main.py
import sys
from PySide2.QtUiTools import QUiLoader
from PySide2.QtWidgets import QApplication
from PySide2.QtCore import QFile
if __name__ == "__main__":
app = QApplication(sys.argv)
file = QFile("mainwindow.ui")
file.open(QFile.ReadOnly)
loader = QUiLoader()
window = loader.load(file)
window.show()
sys.exit(app.exec_())
And to run it, just a
python main.py
will do the job.