PyQt5 control QSpinBox

PyQt5 control QSpinBox


1. QSpinBox

QSPINBox es un control de contador que permite al usuario seleccionar un valor entero haciendo clic arriba o abajo o presionando las teclas arriba y abajo en el teclado para aumentar y disminuir el valor que se muestra actualmente. Por supuesto, el usuario también puede ingresar el valor.
Por defecto, el rango de valores de QSpinBox es (0-99), el tamaño del paso de cada cambio es 1
clase QSpinBox y la clase QDoubleSpinbox se derivan de la clase QAbstractSpinBox, QSpinBox se usa para manejar valores enteros, QDoubleSpinBox se usa para manejar valores de punto flotante, la diferencia entre ellos es procesar datos Diferentes tipos, las otras funciones son básicamente las mismas. La precisión predeterminada de QDoubleSpinBox es dos decimales, pero se puede cambiar mediante setDecimals ()

1.1. Métodos comunes en la clase QSpinBox

  • init (padre: QWidget = Ninguno)
  • cleanText () → str
  • displayIntegerBase () → int
  • evento (QEvent) → bool
  • arreglo (str) → str
  • máximo () → int
  • mínimo () → int
  • prefijo () → str # Obtener el prefijo
  • setDisplayIntegerBase (int) # Configuración hexadecimal
  • setMaximum (int) # valor máximo
  • setMinimum (int)
  • setPrefix (str) # set prefix
  • setRange (int, int) # Establece el rango
  • setSingleStep (int) # Establecer el tamaño del paso
  • setStepType (StepType) # desconocido
  • setSuffix (str) # Establecer prefijo-
  • setValue (int)
  • singleStep () → int # obtiene el valor del paso
  • stepType () → StepType
  • sufijo () → str # obtener sufijo
  • textFromValue (int) → str
  • validar (str, int) → (Estado, str, int)
  • valor () → int
  • valueFromText (str) → int

1.2. Señales

  • textChanged (str)
  • valueChanged (int)
  • valueChanged (str)

2. Código experimental

  
import sys 
from PyQt5.QtWidgets import * 
from PyQt5.QtCore import * 
from PyQt5.QtGui import * 


class MainWidget (QWidget): 
    def __init __ (self, parent = None): 
        super () .__ init __ (parent) 

        self.resize (300, 100) 

        # 垂直 布局
        layout = QVBoxLayout () 

        # 标签
        self.l1 = QLabel ("valor actual:") 
        self.l1.setAlignment (Qt.AlignCenter) 

        layout.addWidget (self.l1) 

        # 计数器
        self.spinBox = QSpinBox ( ) 
        self.spinBox.setRange (0, 300) 
        self.spinBox.setSingleStep (5) 
        layout.addWidget (self.spinBox)

        self.spinBox.valueChanged.connect (self.onValueChanged) 

        self.setLayout (layout) 

    def onValueChanged (self, value): 
        #print ("el valor actual es {0}". format (value)) 
        self.l1.setText (" valor actual: {} ". format (self.spinBox.value ())) 
        
if __name__ ==" __main__ ": 
    app = QApplication (sys.argv) 
    window = MainWidget () 
    window.resize (400, 200) 
    window.show () 

    sys.exit (app.exec_ ())

Supongo que te gusta

Origin www.cnblogs.com/wodeboke-y/p/12697202.html
Recomendado
Clasificación