Как отобразить обьект класса в MainWindow?
Есть класс FirstWindow, который наследует класс QMainWindow. Также есть класс FirstWiget, который наследует класс QGroupBox.
Как сделать так, чтобы объект класса FirstWiget отобразился на открытом окне класса FirstWindow?
class FirstWindow(QtWidgets.QMainWindow):
def __init__(self):
super().__init__()
self.initUI()
def initUI(self):
# какой то код код
pass
class FirstWiget(QtWidgets.QGroupBox):
def __init__(self):
super().__init__()
self.initUI()
def initUI(self):
#какой то код код
pass
if __name__ == '__main__':
app = QtWidgets.QApplication(sys.argv)
w = FirstWiget()
w.show()
sys.exit(app.exec())
Ответы (1 шт):
Автор решения: S. Nick
→ Ссылка
Попробуйте так:
import sys
from PyQt5.Qt import *
from PyQt5 import QtCore, QtGui, QtWidgets
class FirstWiget(QtWidgets.QGroupBox):
def __init__(self):
super().__init__()
self.setTitle('FirstWiget')
self.setStyleSheet('''
background-color: rgb(99, 125, 187);
border: 2px solid #ff2b3f;;
''')
self.initUI()
def initUI(self):
#какой то код код
pass
class FirstWindow(QtWidgets.QMainWindow):
def __init__(self):
super().__init__()
self.centralWidget = QWidget()
self.setCentralWidget(self.centralWidget)
self.setWindowTitle('FirstWindow')
layout = QtWidgets.QGridLayout(self.centralWidget)
self.initUI()
layout.addWidget(self.firstWiget)
def initUI(self):
# какой то код код
self.firstWiget = FirstWiget()
if __name__ == '__main__':
app = QtWidgets.QApplication(sys.argv)
w = FirstWindow()
w.show()
sys.exit(app.exec())
