PyQT5 как добавить возможность изменения размеров виджетов
У меня есть простой интерфейс на PyQt5, который состоит из верхней и нижней зоны, разделенных горизонтальной чертой. Как я могу дать пользователю возможность перемещать эту разделительную полосу вверх и вниз, изменяя, соответственно, размеры верхней и нижней части?
import sys
from PyQt5.QtWidgets import *
class MainWindow(QMainWindow):
def __init__(self):
super().__init__()
self.central_widget = QWidget(self)
self.setGeometry(50, 50, 1300, 700)
self.setCentralWidget(self.central_widget)
self.layout_main_window = QVBoxLayout()
self.central_widget.setLayout(self.layout_main_window)
# верхняя часть
self.layout_top = QHBoxLayout()
self.list = QListView()
self.top_table = QTableWidget()
self.top_table.setRowCount(20)
self.layout_top.addWidget(self.list)
self.layout_top.addWidget(self.top_table)
self.layout_main_window.addLayout(self.layout_top)
# нижняя часть
self.layout_bottom = QVBoxLayout()
self.bot_table = QTableWidget()
self.bot_table.setRowCount(20)
self.layout_bottom.addWidget(self.bot_table)
self.layout_main_window.addLayout(self.layout_bottom)
if __name__ == '__main__':
app = QApplication(sys.argv)
main_window = MainWindow()
main_window.show()
sys.exit(app.exec_())
Источник: Stack Overflow на русском