【问题标题】:PyQt5: How to align the elements of the status bar?PyQt5:如何对齐状态栏的元素?
【发布时间】:2018-01-29 04:13:21
【问题描述】:

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

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)

截图如下:

但我想像截图中那样替换进度条和滑块:

【问题讨论】:

    标签: python qt pyqt pyqt5 statusbar


    【解决方案1】:

    最初的解决方案是使用大于零的拉伸,但这会使 QProgressBar 不受限制地拉伸,在这种情况下,最好将其包含在另一个小部件中并将其嵌入到 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)
    

    截图:

    【讨论】:

      猜你喜欢
      • 2017-12-17
      • 1970-01-01
      • 2020-01-16
      • 2012-09-03
      • 2016-10-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多