textctrl.h

Clase wxTextCtrl

Un control de texto permite mostrar y editar texto.

Jerarquía:

Jerarquía de la clase wxTextCtrl

Puede ser de una o varias líneas. Hay que tener en cuenta que muchos de los métodos de los controles de texto se encuentran en la clase base wxTextEntry que es una clase base común para wxTextCtrl y otros controles que utilizan un campo de entrada de texto de una sola línea (por ejemplo, wxComboBox).

Estilos

Esta clase soporta los siguientes estilos:

wxTE_PROCESS_ENTER
El control generará el evento wxEVT_TEXT_ENTER que puede ser manejado por el programa. En caso contrario, es decir, si este estilo no se especifica en absoluto, o se utiliza, pero no hay manejador de eventos para este evento o el manejador de eventos llama a wxEvent::Skip() para evitar anular el manejo por defecto, la pulsación de la tecla Intro es procesada internamente por el control o utilizada para activar el botón por defecto del diálogo, si existe.
wxTE_PROCESS_TAB
Normalmente, la tecla TAB se utiliza para la navegación por teclado y pulsarla en un control cambia el foco al siguiente. Con este estilo, esto no ocurrirá y si el TAB no es procesado de otra forma (p.e. por el manejador de eventos wxEVT_CHAR ), un carácter TAB literal es insertado en el control. Hay que tener en cuenta que este estilo no tiene efecto para los controles de texto de una sola línea cuando se utiliza wxGTK.
wxTE_MULTILINE
El control de texto permite múltiples líneas. Si no se especifica este estilo, no se utilizarán caracteres de salto de línea en el valor del control.
wxTE_PASSWORD
El texto se mostrará en forma de asteriscos.
wxTE_READONLY
El texto no será editable por el usuario.
wxTE_RICH
Utiliza el control de texto enriquecido bajo MSW, esto permite tener más de 64KB de texto en el control. Este estilo se ignora en otras plataformas y se recomienda utilizar wxTE_RICH2 en lugar de éste en MSW.
wxTE_RICH2
Utilizar control de texto enriquecido versión 2.0 o superior bajo MSW, este estilo se ignora bajo otras plataformas. Hay que tener en cuenta que este estilo puede activarse automáticamente incluso si no se utiliza explícitamente al crear un control de texto con un texto inicial largo (es decir, mucho más de 64KiB), ya que la creación del control simplemente fallaría en este caso bajo MSW si no se utiliza ni este estilo ni wxTE_RICH.
wxTE_AUTO_URL
Resalta las URLs y genera los wxTextUrlEvents cuando se producen eventos de ratón sobre ellas.
wxTE_NOHIDESEL
Por defecto, el control de texto de Windows no muestra la selección cuando no tiene el foco - utiliza este estilo para forzarlo a mostrarla siempre. No hace nada en otras plataformas.
wxHSCROLL
Se creará y utilizará una barra de desplazamiento horizontal, de forma que el texto no se envuelva.
wxTE_NO_VSCROLL
Solo para controles multilínea: nunca se creará una barra de desplazamiento vertical. Esto limita la cantidad de texto que se puede introducir en el control a lo que se puede mostrar en él bajo wxMSW pero no bajo wxGTK o wxOSX. Actualmente no está implementado para el resto de plataformas.
wxTE_LEFT
El texto del control estará justificado a la izquierda (por defecto).
wxTE_CENTRE
El texto del control aparecerá centrado (wxMSW, wxGTK, wxOSX).
wxTE_RIGHT
El texto del control aparecerá justificado a la derecha (wxMSW, wxGTK, wxOSX).
wxTE_DONTWRAP
Igual que el estilo wxHSCROLL: no envolver, mostrar barra de desplazamiento horizontal.
wxTE_CHARWRAP
Solo para controles multilínea: envuelve las líneas demasiado largas para mostrarse por completo en cualquier posición (wxUniv, wxGTK, wxOSX).
wxTE_WORDWRAP
Solo para controles multilínea: envuelve las líneas demasiado largas para ser mostradas completamente en los límites de palabra (wxUniv, wxMSW, wxGTK, wxOSX).
wxTE_BESTWRAP
Solo para controles multilínea: ajustar las líneas a los límites de palabra o a cualquier otro carácter si hay palabras más largas que el ancho de la ventana (por defecto).
wxTE_CAPITALIZE
En PocketPC y Smartphone, hace que la primera letra aparezca en mayúscula.

Hay que tener en cuenta que los estilos de alineación (wxTE_LEFT, wxTE_CENTRE y wxTE_RIGHT) pueden cambiarse dinámicamente después de la creación del control en wxMSW, wxGTK y wxOSX. wxTE_READONLY, wxTE_PASSWORD y los estilos de envoltura pueden cambiarse dinámicamente en wxGTK pero no en wxMSW. Los demás estilos solo pueden establecerse durante la creación del control.

Formato de texto de wxTextCtrl

Los controles de texto multilínea siempre almacenan el texto como una secuencia de líneas separadas por caracteres '\n ', es decir, en el formato de texto Unix incluso en plataformas no Unix. Esto permite al código de usuario ignorar las diferencias entre las plataformas pero a un precio: los índices en el control como los devueltos por GetInsertionPoint() o GetSelection() no pueden ser usados como índices en la cadena devuelta por GetValue() ya que van a estar ligeramente desviados para plataformas que usan "\\r\n " como separador (como hace Windows).

En su lugar, si se necesita obtener una subcadena entre los 2 índices obtenidos del control con la ayuda de las funciones mencionadas anteriormente, se debe utilizar GetRange(). Y los propios índices solo pueden pasarse a otros métodos, por ejemplo SetInsertionPoint() o SetSelection().

En resumen: no utilizar nunca los índices devueltos por wxTextCtrl (multilínea) como índices de la cadena que contiene, sino solo como argumentos para pasarlos a otros métodos de wxTextCtrl. Sin embargo, este problema no se plantea en las plataformas de una sola línea, en las que los índices del control sí se corresponden con las posiciones de la cadena de valores.

Posiciones y coordenadas de wxTextCtrl

Es posible utilizar posiciones lineales, es decir, aproximadamente (pero no siempre exactamente, como se explica en la sección anterior) el índice del carácter en el texto contenido en el control o coordenadas X-Y, es decir, columna y línea del carácter cuando se trabaja con esta clase y proporciona las funciones PositionToXY() y XYToPosition() para convertir entre las dos.

Además, una posición en el control se puede convertir a sus coordenadas en píxeles utilizando PositionToCoords() que puede ser útil para, por ejemplo, mostrar un menú emergente cerca del carácter dado. Y, en la otra dirección, HitTest() puede usarse para encontrar el carácter bajo, o cerca de, las coordenadas en píxeles dadas.

Para ser más precisos, las posiciones se refieren en realidad a los espacios entre caracteres y no a los caracteres en sí. Así, la posición 0 es la que precede al primer carácter del control y, por tanto, es una posición válida incluso cuando el control está vacío. Y si el control contiene un único carácter, tiene dos posiciones válidas: 0 antes de este carácter y 1 - después. Por eso, cuando la documentación de varias funciones menciona "posición inválida", no considera inválida la posición justo después del último carácter de la línea, solo las posiciones más allá de esa (por ejemplo, 2 y mayores en el ejemplo de un solo carácter) son realmente inválidas.

Estilos wxTextCtrl

Los controles de texto multilínea soportan estilos, es decir, ofrecen la posibilidad de establecer colores y fuentes para los caracteres individuales (Hay que tener en cuenta que bajo Windows se requiere el estilo wxTE_RICH para el soporte de estilos). Para utilizar los estilos se puede llamar a SetDefaultStyle() antes de insertar el texto o llamar a SetStyle() más tarde para cambiar el estilo del texto que ya está en el control (la primera solución es mucho más eficiente).

En cualquiera de los dos casos, si el estilo no especifica algunos de los atributos (por ejemplo solo se quiere establecer el color del texto pero sin cambiar la fuente ni el fondo del texto), se utilizarán para ellos los valores del estilo por defecto. Si no hay estilo por defecto, se utilizan los atributos del propio control de texto.

Así que el siguiente código describe correctamente lo que hace: la segunda llamada a SetDefaultStyle() no cambia el color de primer plano del texto (que permanece rojo) mientras que la última no cambia el color de fondo (que permanece gris):

text->SetDefaultStyle(wxTextAttr(*wxRED));
text->AppendText("Red text\n");
text->SetDefaultStyle(wxTextAttr(wxNullColour, *wxLIGHT_GREY));
text->AppendText("Red on grey text\n");
text->SetDefaultStyle(wxTextAttr(*wxBLUE));
text->AppendText("Blue on grey text\n");

wxTextCtrl y flujos C++

Esta clase multihereda de std::streambuf (excepto para algunos compiladores realmente antiguos que utilizan una biblioteca iostream no estándar), permitiendo código como el siguiente:

wxTextCtrl *control = new wxTextCtrl(...);
 
ostream stream(control)
 
stream << 123.456 << " some text\n";
stream.flush();

Hay que tener en cuenta que incluso si la versión de wxWidgets no soporta esto (el símbolo wxHAS_TEXT_WINDOW_STREAM tiene el valor 0) todavía se puede utilizar wxTextCtrl de una manera similar a stream:

wxTextCtrl *control = new wxTextCtrl(...);
 
*control << 123.456 << " some text\n";

Sin embargo la posibilidad de crear un std:: ostream asociado con wxTextCtrl puede ser útil si se necesita redirigir la salida de una función que toma un std::ostream como parámetro a un control de texto.

Otra necesidad comúnmente solicitada es redirigir std: :cout al control de texto. Esto puede hacerse de la siguiente manera:

#include <iostream>
 
wxTextCtrl *control = new wxTextCtrl(...);
 
std::streambuf *sbOld = std::cout.rdbuf();
std::cout.rdbuf(control);
 
// use cout as usual, the output appears in the text control
...
 
std::cout.rdbuf(sbOld);

Pero wxWidgets proporciona una clase conveniente para hacerlo aún más simple por lo que en su lugar solo se puede hacer:

#include <iostream>
 
wxTextCtrl *control = new wxTextCtrl(...);
 
wxStreamToTextRedirector redirect(control);
 
// all output to cout goes into the text control until the exit from
// current scope

Ver wxStreamToTextRedirector para más detalles.

Gestión de eventos

Los siguientes comandos son procesados por los manejadores de eventos por defecto en wxTextCtrl: wxID_CUT, wxID_COPY, wxID_PASTE, wxID_UNDO, wxID_REDO. Los eventos de actualización de UI asociados también se procesan automáticamente, cuando el control tiene el foco.

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(wxCommandEvent& event)

Macros de eventos para eventos emitidos por esta clase:

EVT_TEXT(id, func)
Responde a un evento wxEVT_TEXT, generado cuando el texto cambia. Hay que tener en cuenta que este evento se enviará cuando el contenido del control de texto cambie - ya sea debido a la entrada del usuario o provenga del propio programa (por ejemplo, si se llama a wxTextCtrl ::SetValue() ); ver wxTextCtrl::ChangeValue() para una función que no envía este evento. Sin embargo, este evento no se envía durante la creación del control.
EVT_TEXT_ENTER(id, func)
Responde a un evento wxEVT_TEXT_ENTER, generado cuando se pulsa enter en un control de texto que debe tener el estilo wxTE_PROCESS_ENTER para que se genere este evento.
EVT_TEXT_URL(id, func)
Se ha producido un evento de ratón sobre una URL en el control de texto.
EVT_TEXT_MAXLEN(id, func)
Este evento se genera cuando el usuario intenta introducir más texto en el control que el límite establecido por wxTextCtrl::SetMaxLength(), vea su descripción.

Funciones miembro

wxTextCtrl()

wxTextCtrl::wxTextCtrl()

Constructor por defecto.

wxTextCtrl()

wxTextCtrl::wxTextCtrl( wxWindow * parent, wxWindowID id, const wxString & value = wxEmptyString, const wxPoint & pos = wxDefaultPosition, const wxSize & size = wxDefaultSize, long style = 0, const wxValidator & validator = wxDefaultValidator, const wxString & name = wxTextCtrlNameStr )

Constructor, crea y muestra un control de texto.

Parámetros
parent
Ventana padre. No debe ser NULL.
id
Identificador del control. Un valor de -1 denota un valor por defecto.
value
Valor por defecto del texto.
pos
Posición del control de texto.
size
Tamaño del control de texto.
style
Estilo de la ventana.
validator
Validador de ventana.
name
Nombre de la ventana.
Observaciones

La barra de desplazamiento horizontal (bandera de estilo wxHSCROLL) solo se creará para los controles de texto multilínea. Sin una barra de desplazamiento horizontal, las líneas de texto que no quepan en el tamaño del control se envolverán (pero no se insertará ningún carácter de nueva línea). Los controles de una sola línea no tienen barra de desplazamiento horizontal, el texto se desplaza automáticamente para que el punto de inserción sea siempre visible.

~wxTextCtrl()

virtual wxTextCtrl::~wxTextCtrl()

Destructor, destruye el control de texto.

Create()

bool wxTextCtrl::Create( wxWindow * parent, wxWindowID id, const wxString & value = wxEmptyString, const wxPoint & pos = wxDefaultPosition, const wxSize & size = wxDefaultSize, long style = 0, const wxValidator & validator = wxDefaultValidator, const wxString & name = wxTextCtrlNameStr )

Crea el control de texto para la construcción en dos pasos.

Este método debe ser llamado si se utilizó el constructor por defecto para la creación del control. Sus parámetros tienen el mismo significado que para el constructor no predeterminado.

DiscardEdits()

virtual void wxTextCtrl::DiscardEdits()

Restablece el indicador interno de modificado como si se hubieran guardado los cambios actuales.

EmptyUndoBuffer()

virtual void wxTextCtrl::EmptyUndoBuffer()

Borrar el historial de deshacer.

Actualmente solo implementado en wxMSW (solo para controles que utilizan el estilo wxTE_RICH2) y wxOSX (solo para controles de texto multilínea), no hace nada en los otros ports o para los controles que no utilizan los estilos apropiados.

EmulateKeyPress()

virtual bool wxTextCtrl::EmulateKeyPress(const wxKeyEvent & event)

Esta función inserta en el control el carácter que se habría insertado si el evento de tecla dado se hubiera producido en el control de texto.

El objeto del evento debe ser el mismo que el pasado al manejador EVT_KEY_DOWN previamente por wxWidgets. Hay que tener en cuenta que esta función actualmente no funciona correctamente para todas las teclas en cualquier plataforma excepto MSW.

Valor de retorno

true si el evento produjo un cambio en el control, false en caso contrario.

EnableProofCheck()

virtual bool wxTextCtrl::EnableProofCheck(const wxTextProofOptions & options = wxTextProofOptions::Default())

Activa o desactiva la corrección ortográfica nativa en este control de texto si está disponible en la plataforma actual.

Actualmente esto está soportado en wxMSW (cuando se ejecuta bajo Windows 8 o posterior), wxGTK cuando se utiliza GTK 3 y wxOSX. Además, wxMSW requiere que el control de texto tenga el estilo wxTE_RICH2, mientras que wxOSX requiere que el control tenga el estilo wxTE_MULTILINE.

Cuando se utiliza wxGTK, este método solo funciona si la biblioteca gspell estaba disponible durante la compilación de la biblioteca.

Parámetros
options
Un objeto wxTextProofOptions que especifica el comportamiento deseado del corrector ortográfico (por ejemplo, el idioma a utilizar, la corrección ortográfica, la revisión gramatical, etc.) y si las comprobaciones ortográficas deben estar habilitadas. Por defecto, se habilitan las comprobaciones ortográficas para el idioma actual. Pasando wxTextProofOptions::Disable() se deshabilitan todas las comprobaciones.
Valor de retorno

true si la comprobación ha sido activada o desactivada correctamente, false en caso contrario (normalmente porque la funcionalidad correspondiente no está disponible en la plataforma actual o para este tipo de control de texto).

GetDefaultStyle()

virtual const wxTextAttr& wxTextCtrl::GetDefaultStyle() const

Devuelve el estilo utilizado actualmente para el nuevo texto.

GetLineLength()

virtual int wxTextCtrl::GetLineLength(long lineNo) const

Obtiene la longitud de la línea especificada, sin incluir los caracteres de nueva línea.

Parámetros
lineNo
Número de línea (empezando por cero).
Valor de retorno

La longitud de la línea, o -1 si lineNo no es válido.

GetLineText()

virtual wxString wxTextCtrl::GetLineText(long lineNo) const

Devuelve el contenido de una línea dada en el control de texto, sin incluir ningún carácter de nueva línea.

Parámetros
lineNo
El número de línea, empezando por cero.
Valor de retorno

El contenido de la línea.

GetNumberOfLines()

virtual int wxTextCtrl::GetNumberOfLines() const

Devuelve el número de líneas en el buffer de control de texto.

El número devuelto es el número de líneas lógicas, es decir, solo el recuento del número de caracteres de nueva línea en el control + 1, para los ports wxGTK y wxOSX/Cocoa mientras que es el número de líneas físicas, es decir, el recuento de líneas realmente mostradas en el control, en wxMSW. Debido a esta discrepancia, no se recomienda utilizar esta función.

Observaciones

Hay que tener en cuenta que incluso los controles de texto vacíos tienen una línea (donde está el punto de inserción), por lo que GetNumberOfLines() nunca devuelve 0.

GetProofCheckOptions()

virtual wxTextProofOptions wxTextCtrl::GetProofCheckOptions()

Devuelve las opciones de comprobación de texto actuales.

Esta función se implementa para las mismas plataformas que EnableProofCheck() y devuelve wxTextProofOptions con todas las comprobaciones desactivadas, es decir, tal que wxTextProofOptions::AnyChecksEnabled() devuelva false.

GetStyle()

virtual bool wxTextCtrl::GetStyle( long position, wxTextAttr & style )

Devuelve el estilo en esta posición del control de texto.

No todas las plataformas soportan esta función.

Valor de retorno

true en caso de éxito, false si se ha producido un error (esto también puede significar que los estilos no son compatibles con esta plataforma).

HitTest()

wxTextCtrlHitTestResult wxTextCtrl::HitTest( const wxPoint & pt, long * pos ) const

Busca la posición del carácter en el punto especificado.

Si el código de retorno no es wxTE_HT_UNKNOWN se devuelve la posición del carácter más cercano a esta posición, en caso contrario no se modifica el parámetro de salida.

Hay que tener en cuenta que esta función actualmente solo está implementada en los ports wxUniv, wxMSW y wxGTK y siempre devuelve wxTE_HT_UNKNOWN en el resto de ports.

Nota: En wxPerl esta función sólo toma el argumento pt y devuelve una lista de 2 elementos (result, pos).

Parámetros
pt
La posición del punto a comprobar, en coordenadas de dispositivo de ventana. En wxGTK, y solo allí, las coordenadas pueden ser negativas, pero en código portable solo deben usarse valores positivos.
pos
Recibe la posición del carácter en la posición dada. Puede ser NULL.
HitTest()

wxTextCtrlHitTestResult wxTextCtrl::HitTest( const wxPoint & pt, wxTextCoord * col, wxTextCoord * row ) const

Busca la fila y columna del carácter en el punto especificado.

Si el código de retorno no es wxTE_HT_UNKNOWN se devuelven la fila y columna del carácter más cercano a esta posición, en caso contrario no se modifican los parámetros de salida.

Hay que tener en cuenta que esta función actualmente solo está implementada en los ports wxUniv, wxMSW y wxGTK y siempre devuelve wxTE_HT_UNKNOWN en el resto de ports.

Nota: En wxPerl esta función solo toma el argumento pt y devuelve una lista de 3 elementos (resultado, col, fila).

Parámetros
pt
La posición del punto a comprobar, en coordenadas de dispositivo de ventana.
col
Recibe la columna del carácter en la posición dada. Puede ser NULL.
row
Recibe la fila del carácter en la posición dada. Puede ser NULL.
IsModified()

virtual bool wxTextCtrl::IsModified() const

Devuelve true si el texto ha sido modificado por el usuario.

Hay que tener en cuenta que llamar a SetValue() no hace que el control se modifique.

IsMultiLine()

bool wxTextCtrl::IsMultiLine() const

Devuelve true si se trata de un control de edición multilínea y false en caso contrario.

IsSingleLine()

bool wxTextCtrl::IsSingleLine() const

Devuelve true si se trata de un control de edición de una sola línea y false en caso contrario.

LoadFile()

bool wxTextCtrl::LoadFile( const wxString & filename, int fileType = wxTEXT_TYPE_ANY )

Carga y muestra el archivo nombrado, si existe.

Parámetros
filename
El nombre del archivo a cargar.
fileType
El tipo de archivo a cargar. Actualmente se ignora en wxTextCtrl.
Valor de retorno

true si tiene éxito, false en caso contrario.

MarkDirty()

virtual void wxTextCtrl::MarkDirty()

Marcar texto como modificado (sucio).

OnDropFiles()

void wxTextCtrl::OnDropFiles(wxDropFilesEvent & event)

Esta función de control de eventos implementa el comportamiento predeterminado de arrastrar y soltar, que consiste en cargar el primer archivo soltado en el control.

Parámetros
event
El evento de soltar archivos.
Observaciones

Esta función no está implementada en plataformas que no sean Windows.

OSXDisableAllSmartSubstitutions()

void wxTextCtrl::OSXDisableAllSmartSubstitutions()

Desactiva todas las sustituciones automáticas de caracteres.

Disponibilidad: solo disponible para el port wxOSX/Cocoa.

OSXEnableAutomaticDashSubstitution()

void wxTextCtrl::OSXEnableAutomaticDashSubstitution(bool enable)

Activa la conversión automática de dos guiones ASCII en un guión m.

Esta función está activada por defecto.

Disponibilidad: solo disponible para el port wxOSX/Cocoa.

OSXEnableAutomaticQuoteSubstitution()

void wxTextCtrl::OSXEnableAutomaticQuoteSubstitution(bool enable)

Permite sustituir automáticamente las comillas ASCII y los apóstrofes por sus símbolos tipográficos.

Esta función está activada por defecto.

Disponibilidad: solo disponible para el port wxOSX/Cocoa.

OSXEnableNewLineReplacement()

void wxTextCtrl::OSXEnableNewLineReplacement(bool enable)

Activa la sustitución automática de caracteres de nueva línea en un campo de texto de una sola línea por espacios en macOS.

Esta función está activada por defecto y sustituirá cualquier carácter de nueva línea (\n) introducido en un campo de texto de una sola línea por el carácter de espacio. Normalmente, no se espera que los campos de texto de una sola línea contengan varias líneas de texto (al fin y al cabo, para eso está wxTE_MULTILINE) y es imposible tener varias líneas de texto en ellos en plataformas que no sean Mac. Sin embargo, en macOS/Cocoa, un control de texto de una sola línea puede mostrar varias líneas y esta función permite eliminar la restricción que impide introducir varias líneas a menos que se especifique wxTE_MULTILINE.

Nota: No tiene efecto si la bandera wxTE_MULTILINE está activada en un control de texto.

Disponibilidad: solo disponible para el port wxOSX/Cocoa.

PositionToCoords()

wxPoint wxTextCtrl::PositionToCoords(long pos) const

Convierte la posición del texto en coordenadas del cliente en píxeles.

Esta función permite encontrar dónde se muestra el carácter en la posición dada en el control de texto.

Disponibilidad: solo disponible para los ports wxMSW, wxGTK. Además, wxGTK solo implementa este método para controles multilínea y wxDefaultPosition siempre se devuelve para los de una sola línea.

Parámetros
pos
Posición del texto en el rango de 0 a GetLastPosition() (inclusive).
Valor de retorno

En caso de éxito devuelve un wxPoint que contiene las coordenadas del cliente para la posición dada en píxeles, en caso contrario devuelve wxDefaultPosition.

PositionToXY()

virtual bool wxTextCtrl::PositionToXY( long pos, long * x, long * y ) const

Convierte la posición dada en un par de columna y número de línea con base cero.

Parámetros
pos
Posición.
x
Recibe el número de columna basado en cero.
y
Recibe el número de línea basado en cero.
Valor de retorno

true en caso de éxito, false en caso de fallo (probablemente debido a un parámetro de posición demasiado grande).

Nota: En wxPerl esta función solo toma el argumento pos y devuelve una lista de 2 elementos (x, y).

SaveFile()

bool wxTextCtrl::SaveFile( const wxString & filename = wxEmptyString, int fileType = wxTEXT_TYPE_ANY )

Guarda el contenido del control en un archivo de texto.

Parámetros
filename
El nombre del fichero en el que guardar el texto.
fileType
El tipo de archivo a guardar. Actualmente se ignora en wxTextCtrl.
Valor de retorno

true si la operación se ha realizado correctamente, false en caso contrario.

SetDefaultStyle()

virtual bool wxTextCtrl::SetDefaultStyle(const wxTextAttr & style)

Cambia el estilo por defecto a utilizar para el nuevo texto que se va a añadir al control.

Esto se aplica tanto al texto añadido mediante programación utilizando WriteText() o AppendText() como al texto introducido por el usuario de forma interactiva.

Si alguno de los colores de fuente, primer plano o fondo no está definido en el estilo, se utilizan para ellos los valores del estilo por defecto anterior. Si el estilo predeterminado anterior tampoco los establecía, se utilizarán la fuente o los colores globales del propio control de texto.

Sin embargo, si el parámetro style es el wxTextAttr por defecto, entonces el estilo por defecto se restablece (en lugar de combinarse con el nuevo estilo, que no lo cambiaría en absoluto).

Parámetros
style
El estilo para el nuevo texto.
Valor de retorno

true en caso de éxito, false si se ha producido un error (esto también puede significar que los estilos no están soportados en esta plataforma).

SetModified()

void wxTextCtrl::SetModified(bool modified)

Marca el control como modificado, ya sea por el usuario o no.

SetStyle()

virtual bool wxTextCtrl::SetStyle( long start, long end, const wxTextAttr & style )

Cambia el estilo del rango dado.

Si algún atributo del estilo no está definido, se utilizará el atributo correspondiente de GetDefaultStyle().

Parámetros
start
Comienzo del rango a cambiar.
end
El final del rango a cambiar.
style
El nuevo estilo para el rango.
Valor de retorno

true en caso de éxito, false si se ha producido un error (esto también puede significar que los estilos no son compatibles con esta plataforma).

ShowPosition()

virtual void wxTextCtrl::ShowPosition(long pos)

Hace visible la línea que contiene la posición dada.

Parámetros
pos
La posición que debe ser visible.
XYToPosition()

virtual long wxTextCtrl::XYToPosition( long x, long y ) const

Convierte el número de columna y línea basado en cero dado en una posición.

Parámetros
x
El número de columna.
y
El número de línea.
Valor de retorno

El valor de la posición, o -1 si x o y no son válidos.

Operadores

operator<<()

wxTextCtrl& wxTextCtrl::operator<<(char c)

Definiciones de operadores para añadir a un control de texto.

Estos operadores pueden utilizarse como con los flujos estándar de C++, por ejemplo:

wxTextCtrl *wnd = new wxTextCtrl(my_frame);
 
(*wnd) << "Welcome to text control number " << 1 << ".\n";
operator<<()

wxTextCtrl& wxTextCtrl::operator<<(const wxString & s)

Definiciones de operadores para añadir a un control de texto.

Estos operadores pueden utilizarse como con los flujos estándar de C++, por ejemplo:

wxTextCtrl *wnd = new wxTextCtrl(my_frame);
 
(*wnd) << "Welcome to text control number " << 1 << ".\n";
operator<<()

wxTextCtrl& wxTextCtrl::operator<<(double d)

Definiciones de operadores para añadir a un control de texto.

Estos operadores pueden utilizarse como con los flujos estándar de C++, por ejemplo:

wxTextCtrl *wnd = new wxTextCtrl(my_frame);
 
(*wnd) << "Welcome to text control number " << 1 << ".\n";
operator<<()

wxTextCtrl& wxTextCtrl::operator<<(float f)

Definiciones de operadores para añadir a un control de texto.

Estos operadores pueden utilizarse como con los flujos estándar de C++, por ejemplo:

wxTextCtrl *wnd = new wxTextCtrl(my_frame);
 
(*wnd) << "Welcome to text control number " << 1 << ".\n";
operator<<()

wxTextCtrl& wxTextCtrl::operator<<(int i)

Definiciones de operadores para añadir a un control de texto.

Estos operadores pueden utilizarse como con los flujos estándar de C++, por ejemplo:

wxTextCtrl *wnd = new wxTextCtrl(my_frame);
 
(*wnd) << "Welcome to text control number " << 1 << ".\n";
operator<<()

wxTextCtrl& wxTextCtrl::operator<<(long i)

Definiciones de operadores para añadir a un control de texto.

Estos operadores pueden utilizarse como con los flujos estándar de C++, por ejemplo:

wxTextCtrl *wnd = new wxTextCtrl(my_frame);
 
(*wnd) << "Welcome to text control number " << 1 << ".\n";
operator<<()

wxTextCtrl& wxTextCtrl::operator<<(wchar_t c)

Definiciones de operadores para añadir a un control de texto.

Estos operadores pueden utilizarse como con los flujos estándar de C++, por ejemplo:

wxTextCtrl *wnd = new wxTextCtrl(my_frame);
 
(*wnd) << "Welcome to text control number " << 1 << ".\n";

Métodos y datos heredados

Esta clase hereda los métodos y datos miembro públicos y protegidos de wxObject, wxEvtHandler, wxWindow, wxControl y wxTextEntry.