Clase wxSpinButton
Un wxSpinButton tiene dos pequeños botones de flecha arriba y abajo (o izquierda y derecha).
Jerarquía:

A menudo se utiliza junto a un control de texto para aumentar y disminuir un valor. Los programas portables deberían intentar utilizar wxSpinCtrl en su lugar, ya que wxSpinButton no está implementado para todas las plataformas, pero wxSpinCtrl sí, ya que degenera en un simple wxTextCtrl en dichas plataformas.
Nota: el rango soportado por este control (y wxSpinCtrl) depende de la plataforma pero es al menos de -0x8000 a 0x7fff. Bajo GTK y Win32 con una versión suficientemente nueva de comctrl32.dll (se requiere al menos 4.71, se recomienda 5.80) se soporta el rango completo de 32 bits.
Estilos
Esta clase soporta los siguientes estilos:
- wxSP_HORIZONTAL
- Especifica un botón de giro horizontal (hay que tener en cuenta que este estilo no está soportado en wxGTK).
- wxSP_VERTICAL
- Especifica un botón de giro vertical.
- wxSP_ARROW_KEYS
- El usuario puede utilizar las teclas de flecha para cambiar el valor.
- wxSP_WRAP
- El valor se ajusta al mínimo y al máximo.
Eventos emitidos por esta clase
Las siguientes macros manejadoras de eventos redirigen los eventos a manejadores de funciones miembro 'func' con prototipos como:
void handlerFuncName(wxSpinEvent& event)
Macros de eventos para eventos emitidos por esta clase:
- EVT_SPIN(id, func)
- Se genera cada vez que al pulsar una flecha se cambia el valor del botón de giro.
- EVT_SPIN_UP(id, func)
- Se genera cuando al pulsar la flecha izquierda/arriba se cambia el valor del botón de spin.
- EVT_SPIN_DOWN(id, func)
- Se genera cuando al pulsar la flecha derecha/abajo se cambia el valor del botón de giro.
hay que tener en cuenta que si se manejan ambos eventos SPIN y UP o DOWN, se enviará una notificación sobre cada uno de ellos dos veces: primero se recibirá el evento UP/DOWN y luego, si no fue vetado, se enviará el evento SPIN.
Funciones miembro
wxSpinButton()
wxSpinButton::wxSpinButton()
Constructor por defecto.
wxSpinButton()
wxSpinButton::wxSpinButton( wxWindow * parent, wxWindowID id = -1, const wxPoint & pos = wxDefaultPosition, const wxSize & size = wxDefaultSize, long style = wxSP_VERTICAL, const wxString & name = "spinButton" )
Constructor, crea y muestra un botón de giro.
Parámetros
- parent
- Ventana padre. No debe ser nullptr.
- id
- Identificador de la ventana. El valor wxID_ANY indica un valor por defecto.
- pos
- Posición de la ventana. Si se especifica wxDefaultPosition se elige una posición por defecto.
- size
- Tamaño de la ventana. Si se especifica wxDefaultSize se elige un tamaño por defecto.
- style
- Estilo de la ventana.
- name
- Nombre de la ventana.
~wxSpinButton()
virtual wxSpinButton::~wxSpinButton()
Destructor, destruye el control del botón de giro.
Create()
bool wxSpinButton::Create( wxWindow * parent, wxWindowID id = -1, const wxPoint & pos = wxDefaultPosition, const wxSize & size = wxDefaultSize, long style = wxSP_VERTICAL, const wxString & name = "spinButton" )
Función de creación de la barra de desplazamiento llamada por el constructor del botón de giro.
Ver wxSpinButton() para más detalles.
GetIncrement()
int wxSpinButton::GetIncrement() const
Obtiene el valor de incremento para un control de giro.
El valor por defecto es 1 pero puede cambiarse usando SetIncrement().
GetMax()
virtual int wxSpinButton::GetMax() const
Devuelve el valor máximo permitido.
GetMin()
virtual int wxSpinButton::GetMin() const
Devuelve el valor mínimo permitido.
GetValue()
virtual int wxSpinButton::GetValue() const
Devuelve el valor actual del botón de giro.
SetIncrement()
void wxSpinButton::SetIncrement(int value)
Establece el incremento del control.
El incremento es el número en el que cambia el valor cuando se utiliza la flecha arriba o abajo.
El valor por defecto es 1.
Esta función está actualmente implementada solo en wxMSW y no hace nada en otras plataformas.
SetRange()
virtual void wxSpinButton::SetRange( int min, int max )
Establece el rango del botón girar.
En código portable, min debe ser menor o igual que max. En wxMSW es posible especificar mínimo mayor que máximo y el control nativo soporta el mismo rango como si estuvieran invertidos, pero intercambia el significado de las flechas arriba y abajo, sin embargo esta dudosa característica no está soportada en otras plataformas.
Parámetros
- min
- El valor mínimo para el botón de giro.max El valor máximo para el botón de giro.
SetValue()
virtual void wxSpinButton::SetValue(int value)
Establece el valor del botón de giro.
Parámetros
- value
- El valor del botón de giro.
Métodos y datos heredados
Esta clase hereda los métodos y datos miembro públicos y protegidos de wxControl, wxWindow, wxEvtHandler y wxObject.