LINUX.ORG.RU

PyQt5 и Qt Designer: правильно подключить форму приложения

 , , , ,


1

1

Всем привет. Изучаю PyQt, морды приложениям (как минимум на первых порах) буду лепить в Qt Designer. В интернетах нашёл 3 способа подключения формы к коду: напрямую подключать .ui файл дизайнера, конвертировать его в класс через pyuic и конвертировать непосредственно в коде приложения через uic.loadUi(). Вопрос к знатокам: какой способ предпочтительнее? На мой взгляд подключать форму напрямую будет удобнее тогда, когда нужно будет что-то в ней подправить. Но с другой стороны - если её подключать как класс, код становится более понятным. Так ли это?

( Ui_MainWindow, QMainWindow ) = uic.loadUiType( 'myui.ui' )

....

self.ui = Ui_MainWindow()
self.ui.setupUi( self )

не?

AUX ★★★★
()

#!-*-coding:utf-8-*-
import sys
 
# import PyQt5 QtCore and QtGui modules
from PyQt5.QtWidgets import QApplication, QWidget
from PyQt5.QtGui import *
from PyQt5 import uic
 
( Ui_MainWindow, QMainWindow ) = uic.loadUiType( '1.ui' )
 
class MainWindow ( QMainWindow ):
    """MainWindow inherits QMainWindow"""
 
    def __init__ ( self, parent = None ):
        QMainWindow.__init__( self, parent )
        self.ui = Ui_MainWindow()
        self.ui.setupUi( self )
 
    def __del__ ( self ):
        self.ui = None
 
#-----------------------------------------------------#
if __name__ == '__main__':
 
    # create application
    app = QApplication( sys.argv )
    app.setApplicationName( 'hello' )
 
    # create widget
    w = MainWindow()
    w.setWindowTitle('hello' )
    w.show()
 
 
    # execute application
    sys.exit( app.exec_() )
AUX ★★★★
()
Ответ на: комментарий от anonymous

Чего молчим? Отвечаем. Актуально.

В каком месте-то актуально? Уже час никто не отвечает

AUX ★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.