En este artículo veremos cómo podemos obtener el ancho del carácter más ancho en el cuadro de número. Cada carácter consume un ancho diferente y algunos tienen menos ancho y otros tienen un ancho enorme, el ancho estará en la unidad de píxel.
Para hacer esto, usamos maxWidth
el método con el objeto QFontMetrics del cuadro de número.
Sintaxis: font_metrics.maxWidth()
Argumento: no requiere argumento
Retorno: Devuelve entero.
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 geometry self.setGeometry(100, 100, 600, 400) # calling method self.UiComponents() # showing all the widgets self.show() # method for widgets def UiComponents(self): # creating spin box self.spin = QSpinBox(self) # setting geometry to spin box self.spin.setGeometry(100, 100, 250, 40) # setting range to the spin box self.spin.setRange(1, 999999) # setting prefix to spin self.spin.setPrefix("PREFIX ") # setting suffix to spin self.spin.setSuffix(" SUFFIX") # setting under line to the font font = self.spin.font() font.setUnderline(True) self.spin.setFont(font) # creating a label label = QLabel(self) # making label multi line label.setWordWrap(True) # setting geometry to the label label.setGeometry(100, 200, 300, 60) # getting font metrics f_metrics = self.spin.fontMetrics() # getting max width value = f_metrics.maxWidth() # setting text to the label label.setText("Max width of character: " + str(value)) # create pyqt5 app 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