Clase wxValidator
wxValidator es la clase base para una familia de clases validadoras que median entre una clase de control, y los datos de la aplicación.
Jerarquía:

Un validador tiene tres funciones principales:
- Transferir datos desde una variable C++ o almacenamiento propio hacia y desde un control.
- Validar datos en un control, y mostrar un mensaje de error apropiado.
- Filtrar eventos (como pulsaciones de teclas), cambiando así el comportamiento del control asociado.
Los validadores pueden introducirse en los controles de forma dinámica.
Para especificar un validador "nulo" por defecto, utilizar el valor wxDefaultValidator.
Funciones miembro
wxValidator()
wxValidator::wxValidator()
Constructor.
~wxValidator()
virtual wxValidator::~wxValidator()
Destructor.
Clone()
virtual wxObject* wxValidator::Clone() const
Todas las clases validadoras deben implementar la función Clone(), que devuelve una copia idéntica de sí misma.
Esto se debe a que los validadores se pasan a los constructores de control como referencias que deben copiarse. A diferencia de objetos como pens y brushes, no tiene sentido tener un esquema de recuento de referencias para hacer esta clonación porque todos los validadores deben tener datos separados.
Valor de retorno
Esta función base devuelve NULL.
Reimplementado en wxTextValidator y wxGenericValidator.
GetWindow()
wxWindow* wxValidator::GetWindow() const
Devuelve la ventana asociada al validador.
IsSilent()
static bool wxValidator::IsSilent()
Devuelve si el sonido de error está actualmente desactivado.
SetWindow()
virtual void wxValidator::SetWindow(wxWindow * window)
Asocia una ventana con el validador.
Esta función es llamada automáticamente por wxWidgets al crear una instancia de clase derivada de wxWindow que toma una referencia wxValidator. Desde wxWidgets 3.1.1, se puede sobrescribir en los validadores personalizados para realizar cualquier inicialización o comprobación de la ventana cuando el validador se asocia a ella.
Por ejemplo:
new wxTextCtrl(this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0, wxTextValidator(wxFILTER_ALPHA, &g_data.m_string));
enlazará automáticamente la instancia wxTextValidator con la instancia wxTextCtrl y llamará al método SetWindow() del objeto wxTextValidator.
SuppressBellOnError()
static void wxValidator::SuppressBellOnError(bool suppress = true)
Esta función activa o desactiva el sonido de error producido por los validadores si se pulsa una tecla no válida.
Parámetros
- suppress
- Si es true, el sonido de error no se reproduce cuando un validador detecta un error. Si es false, se activa el sonido de error.
TransferFromWindow()
virtual bool wxValidator::TransferFromWindow()
Esta función anulable es llamada cuando el valor de la ventana debe ser transferido al validador.
Valor de retorno
false si hay algún problema.
Reimplementado en wxTextValidator, wxNumValidator< T >, y wxGenericValidator.
TransferToWindow()
virtual bool wxValidator::TransferToWindow()
Esta función anulable es llamada cuando el valor asociado al validador debe ser transferido a la ventana.
Valor de retorno
false si hay algún problema.
Reimplementado en wxTextValidator, wxNumValidator< T >, y wxGenericValidator.
Validate()
virtual bool wxValidator::Validate(wxWindow * parent)
Esta función anulable es llamada cuando el valor de la ventana asociada debe ser validado.
Parámetros
- parent
- El padre de la ventana asociada al validador.
Valor de retorno
false si el valor en la ventana no es válido; puede mostrar un diálogo de error.
Reimplementado en wxTextValidator y wxNumericPropertyValidator.
Métodos y datos heredados
Esta clase hereda los métodos y datos miembro públicos y protegidos de wxEvtHandler y wxObject.