Как подключить графику PyQt5 к логике (с использованием классов)

Имеется какой либо графический код, как его подключить к логике с использованием классов?

Я делаю вот так:

import sys
from PyQt5.QtWidgets import QApplication
from PyQt5.QtWidgets import QWidget, QLabel
from PyQt5 import uic

class Widget(QWidget):

    def __init__(self):
        super().__init__()
        uic.loadUi("UI_lke2.ui", self)




if __name__ == '__main__':
    app = QApplication(sys.argv)
    ex = Widget()
    ex.show()
    sys.exit(app.exec_())

Но, получаю ошибку:

    Traceback (most recent call last):
  File "G:\PyCharm\Gui_Программы\Python\Новая папка\SL_lke2.py", line 17, in <module>
    ex = Widget()
  File "G:\PyCharm\Gui_Программы\Python\Новая папка\SL_lke2.py", line 10, in __init__
    uic.loadUi("UI_lke2.ui", self)
  File "C:\Users\iru\AppData\Local\Programs\Python\Python39\lib\site-packages\PyQt5\uic\__init__.py", line 238, in loadUi
    return DynamicUILoader(package).loadUi(uifile, baseinstance, resource_suffix)
  File "C:\Users\iru\AppData\Local\Programs\Python\Python39\lib\site-packages\PyQt5\uic\Loader\loader.py", line 66, in loadUi
    return self.parse(filename, resource_suffix)
  File "C:\Users\iru\AppData\Local\Programs\Python\Python39\lib\site-packages\PyQt5\uic\uiparser.py", line 1037, in parse
    actor(elem)
  File "C:\Users\iru\AppData\Local\Programs\Python\Python39\lib\site-packages\PyQt5\uic\uiparser.py", line 822, in createUserInterface
    self.toplevelWidget = self.createToplevelWidget(cname, wname)
  File "C:\Users\iru\AppData\Local\Programs\Python\Python39\lib\site-packages\PyQt5\uic\Loader\loader.py", line 57, in createToplevelWidget
    raise TypeError(
TypeError: ('Wrong base class of toplevel widget', (<class '__main__.Widget'>, 'QMainWindow'))

Ответы (1 шт):

Автор решения: gil9red

Похоже, вы создавали форму для QMainWindow

Поменяйте тип наследуемого класса на QMainWindow:

from PyQt5.QtWidgets import QMainWindow

...

class Widget(QMainWindow):
→ Ссылка