我有一个 QVBoxLayout,当容器水平调整大小时,它似乎正在挤压它的内容。这是当窗口处于最小宽度时的样子。一切都完美契合:以下是水平调整窗口大小后发生的情况:如您所见(查看突出显示的帖子,背景颜色较深),容器缩小,文本被截断。这是我的代码:class MainWindow(QWidget): def __init__(self): super().__init__() self.setObjectName("window") self.resize(850, 650) self.setWindowTitle("qt-devRant by AlgoRythm") header = QWidget(self) header.setObjectName("header") header.move(0, 0) self.header = header logo = QLabel(header) logo.move(10, 8) logo.setPixmap(logo_small.scaledToHeight(45, Qt.SmoothTransformation)) name = QLabel(header) name.setObjectName("header-name") name.setText("devRant") name.setFont(comfortaa) name.move(60, 0) rant_scroller = QScrollArea(self) rant_scroller.setWidgetResizable(True) rant_scroller.setObjectName("rant-scroller") rant_scroller.setFrameShape(QFrame.NoFrame) self.rant_scroller = rant_scroller rant_area = QWidget() rant_area.setObjectName("rant-area") rant_scroller.setWidget(rant_area) self.rant_area = rant_area rant_scroller_layout = QVBoxLayout() rant_area.setLayout(rant_scroller_layout) rant_scroller_layout.setContentsMargins(0, 0, 0, 0) rant_scroller_layout.setSpacing(0) self.rant_scroller_layout = rant_scroller_layout rants = Rant.get(limit=50) for rant in rants: test = RantContainer() test.rant_content.setText(rant.text) rant_scroller_layout.addWidget(test.container, 0, Qt.AlignCenter | Qt.AlignTop) def resizeEvent(self, event): self.do_sizing() def do_sizing(self): self.size_header() self.size_rant_scroller() def size_header(self): self.header.resize(self.width(), self.header.height()) def size_rant_scroller(self): self.rant_scroller.move(0, self.header.height()) self.rant_scroller.resize(self.width(), self.height() - self.header.height())
添加回答
举报
0/150
提交
取消