Difference between revisions of "Documentation/Nightly/Developers/Tutorials/PythonAndUIFile"
From Slicer Wiki
(Prepend documentation/versioncheck template. See http://na-mic.org/Mantis/view.php?id=2887) |
|||
Line 10: | Line 10: | ||
|[[Image:UIFileForPythonExample.png|thumb|600px|Example of UI file with a QPushButton and QLineEdit]] | |[[Image:UIFileForPythonExample.png|thumb|600px|Example of UI file with a QPushButton and QLineEdit]] | ||
|} | |} | ||
− | |||
− | |||
The following code snippet aims at loading the UI file and connecting the associated QPushButton and QLineEdit. | The following code snippet aims at loading the UI file and connecting the associated QPushButton and QLineEdit. | ||
<pre> | <pre> | ||
− | + | line_edit_widget = slicer.util.loadUI("/home/jchris/Projects/sandbox/qSlicerLineEditWidget.ui") | |
− | |||
− | |||
− | |||
− | |||
− | |||
# Get references to both the QPushButton and the QLineEdit | # Get references to both the QPushButton and the QLineEdit | ||
Line 32: | Line 25: | ||
</pre> | </pre> | ||
− | + | Loading the UI file and accessing the associated objects is internally done using [http://doc.trolltech.com/4.7/quiloader.html QUILoader]. | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− |
Revision as of 20:02, 18 July 2018
Home < Documentation < Nightly < Developers < Tutorials < PythonAndUIFile
For the latest Slicer documentation, visit the read-the-docs. |
Back to Developers Information←
This tutorial will demonstrate how UI file created using QtDesigner can be loaded and used from a python script loaded using the Slicer python interactor.
As depicted below, let's assume you created a UI file where a QLineEdit and QPushButton are layout horizontally.
The following code snippet aims at loading the UI file and connecting the associated QPushButton and QLineEdit.
line_edit_widget = slicer.util.loadUI("/home/jchris/Projects/sandbox/qSlicerLineEditWidget.ui") # Get references to both the QPushButton and the QLineEdit clear_button = line_edit_widget.findChild(qt.QPushButton, 'ClearButton') line_edit = line_edit_widget.findChild(qt.QLineEdit, 'LineEdit') clear_button.connect('clicked()', line_edit, 'clear()') line_edit_widget.show()
Loading the UI file and accessing the associated objects is internally done using QUILoader.