Размеры QProgressBar в QStatusBar
Для меня явилось открытием, что ProgressBar, находясь в StatusBar’е, растягивается в зависимости от размеров окна.
Вопрос: Можно ли установить фиксированный размер ProgressBar’а, скованного рамками StatusBar’а, не меняя при этом размеры StatusBar’а, либо окна?
p.s. Вопрос общий, весь код выкладывать смысла нет
#main.py
self.progress = QtWidgets.QProgressBar(self, minimum=0, maximum=100)
self.progress.setObjectName("progress")
self.progress.setStyleSheet('text-align: center; '
'min-height: 15px; max-height: 15px;')
self.statusBar().addPermanentWidget(self.progress)
Ответы (1 шт):
Второй параметр addPermanentWidget определяет растягивать ли этот элемент, и с каким весом, если можно растягивать несколько элементов. Если ни для одного элемента stretch не указан, то определяется автоматически, исходя из sizePolicy элементов (не документированно).
self.statusBar().addPermanentWidget(self.progress, 0)
Разумеется, нужно чтобы был хотя бы один элемент с ненулевым stretch. Можно добавить пустой QWidget:
self.statusBar().addPermanentWidget( QtWidgets.QWidget(self), 1 )

