PyQt5 |如何在进度条中显示十进制值?
在本文中,我们将了解如何在进度条中显示十进制值。我们可以使用setValue
方法设置进度条中的值,但它需要整数作为参数。如果我们尝试传递 float 或 double 值,它会自动将它们转换为整数。
为此,我们必须执行以下操作:
- 更改进度条的最大范围值,默认为 0 到 100。如果我们要显示 1 个十进制值,请将其设置为 100*n,此处“n”将为 10,如果我们要显示 2 个十进制值,请设置它到 100*n 这里 n 将是 100 等等。
- 通过将值乘以“n”来设置进度条的值。
- 使用格式方法显示十进制值。
下面是实现。
# importing libraries
from PyQt5.QtWidgets import *
from PyQt5 import QtCore, QtGui
from PyQt5.QtGui import *
from PyQt5.QtCore import *
import sys
class Window(QMainWindow):
def __init__(self):
super().__init__()
# setting title
self.setWindowTitle("Python ")
# setting geometry
self.setGeometry(100, 100, 600, 400)
# calling method
self.UiComponents()
# showing all the widgets
self.show()
# method for widgets
def UiComponents(self):
# creating progress bar
bar = QProgressBar(self)
# setting geometry to progress bar
bar.setGeometry(200, 150, 200, 30)
# setting value of n for 2 decimal values
n = 100
# setting maximum value for 2 decimal points
bar.setMaximum(100 * n)
# value in percentage
value = 75.55
# setting the value by multiplying it to 100
bar.setValue(value * n)
# displaying the decimal value
bar.setFormat("%.02f %%" % value)
# setting alignment to centre
bar.setAlignment(Qt.AlignCenter)
# create pyqt5 app
App = QApplication(sys.argv)
# create the instance of our Window
window = Window()
# start the app
sys.exit(App.exec())
输出 :