python - PyQt5:如何对齐状态栏的元素?

标签 python qt pyqt pyqt5 statusbar

我创建了一个如下所示的状态栏:

def initStatusbar(self):
    self.zoomSlider = QSlider(Qt.Horizontal)
    self.zoomSlider.setMaximumWidth(200)
    self.zoomSlider.setRange(1, 200)
    self.zoomSlider.setSingleStep(10)
    self.zoomSlider.setValue(100)

    self.progressbar = QProgressBar()
    self.progressbar.setMaximumWidth(400)
    self.statusBar().addWidget(self.progressbar)
    self.statusBar().addWidget(self.zoomSlider)

截图如下:

enter image description here

但我想替换屏幕截图中的进度条和 slider :

enter image description here

最佳答案

最初的解决方案是使用大于零的拉伸(stretch),但这将使 QProgressBar 拉伸(stretch)不受限制,在这种情况下,最好将其包含在另一个小部件中并将其嵌入到 QStatusBar 中。

def initStatusbar(self):
    self.zoomSlider = QSlider(Qt.Horizontal)
    self.zoomSlider.setMaximumWidth(200)
    self.zoomSlider.setRange(1, 200)
    self.zoomSlider.setSingleStep(10)
    self.zoomSlider.setValue(100)

    self.progressbar = QProgressBar()
    self.progressbar.setMaximumWidth(400)

    widget = QWidget(self)
    widget.setLayout(QHBoxLayout())
    widget.layout().addWidget(self.progressbar)
    widget.layout().addWidget(self.zoomSlider)
    self.statusBar().addWidget(widget, 1)

屏幕截图:

enter image description here

关于python - PyQt5:如何对齐状态栏的元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45791136/

相关文章:

python - 尝试将数据帧写入 .CSV - 权限被拒绝

python - 如何对包含多个数值列表的字典进行排序?

c++ - QTimer 与扩展 QThread 无关

python - 如何从索引列表中选择 QtableWidget 中的单元格

python - 将 QLineEdit 设置为只读但仍接受 Drops

python - 插入记录后让 QTableView 和数据库同步的最佳方法是什么?

Python累积条件逻辑

python - 如何根据某些变量更改数据点颜色

qt - Qt组件边框颜色

c++ - 如何通过 QSqlTableModel 保存更改数据库?