qprogressbar设置文字在外边
时间: 2024-05-05 21:22:15 浏览: 212
可以通过设置 `QProgressBar` 的样式表来实现在进度条外部显示文字。具体步骤如下:
1. 使用 `QProgressBar::chunk` 选择器来设置进度条的样式,例如:
```python
progress_bar.setStyleSheet("""
QProgressBar {
border: 2px solid grey;
border-radius: 5px;
text-align: center;
}
QProgressBar::chunk {
background-color: #CD96CD;
width: 20px;
}
""")
```
2. 在样式表中使用 `::chunk` 伪元素的 `subcontrol-origin` 和 `subcontrol-position` 属性来设置文字的位置。例如,将文字放在进度条的左侧:
```python
progress_bar.setStyleSheet("""
QProgressBar {
border: 2px solid grey;
border-radius: 5px;
text-align: center;
}
QProgressBar::chunk {
background-color: #CD96CD;
width: 20px;
subcontrol-origin: padding;
subcontrol-position: left;
}
QProgressBar::chunk:disabled {
background-color: #aaa;
}
""")
```
3. 使用 `QProgressBar` 的 `setFormat` 方法来设置进度条上显示的文字格式。例如:
```python
progress_bar.setFormat("%v/%m (%p%)")
```
这样就可以在进度条左侧显示形如 "50/100 (50%)" 的文字了。
阅读全文