En este artículo veremos cómo crear una barra de progreso en forma de cápsula. De forma predeterminada, cuando creamos la barra de progreso, tiene forma rectangular, aunque podemos cambiar la forma con la ayuda del resize
método. Pero esto solo permitirá cambiar la forma de rectángulo a cuadrado. A continuación se muestra una representación de la barra de progreso normal frente a la barra de progreso en forma de cápsula.
Para hacerlo tenemos que cambiar el radio del borde tanto del fondo como de la barra de la barra de progreso, esto se hace cambiando la hoja de estilo CSS, abajo está el código de la hoja de estilo.
QProgressBar { border: solid grey; border-radius: 15px; color: black; } QProgressBar::chunk { background-color: #05B8CC; border-radius :15px; }
Esta hoja de estilo se utiliza cuyo setStyleSheet
método, a continuación se muestra la implementació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 background color to window # self.setStyleSheet("background-color : yellow") # 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, 100, 200, 30) # setting the value bar.setValue(70) # setting alignment to center bar.setAlignment(Qt.AlignCenter) # setting background to color and radius # and bar color and bar radius bar.setStyleSheet("QProgressBar" "{" "border: solid grey;" "border-radius: 15px;" " color: black; " "}" "QProgressBar::chunk " "{background-color: # 05B8CC;" "border-radius :15px;" "}") App = QApplication(sys.argv) # create the instance of our Window window = Window() # start the app sys.exit(App.exec())
Producción :
Publicación traducida automáticamente
Artículo escrito por rakshitarora y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA