Mensaje _ GETTEXT de WM

Copia el texto que corresponde a una ventana en un búfer proporcionado por el autor de la llamada.

#define WM_GETTEXT                      0x000D

Parámetros

wParam

Número máximo de caracteres que se van a copiar, incluido el carácter nulo de terminación.

Las aplicaciones ANSI pueden tener la cadena en el búfer reducida en tamaño (a un mínimo de la mitad del valor wParam) debido a la conversión de ANSI a Unicode.

lParam

Puntero al búfer que va a recibir el texto.

Valor devuelto

Tipo: LRESULT

El valor devuelto es el número de caracteres copiados, sin incluir el carácter nulo final.

Comentarios

La función DefWindowProc copia el texto asociado a la ventana en el búfer especificado y devuelve el número de caracteres copiados. Tenga en cuenta que para los controles estáticos que no son de texto, esto proporciona el texto con el que se creó originalmente el control, es decir, el número de identificador. Sin embargo, proporciona el identificador del control estático que no es de texto tal y como se creó originalmente. Es decir, si posteriormente usó un _ setimage de STM para cambiarlo, se devolvería el identificador original.

Para un control de edición, el texto que se va a copiar es el contenido del control de edición. Para un cuadro combinado, el texto es el contenido de la parte del control de edición (o texto estático) del cuadro combinado. Para un botón, el texto es el nombre del botón. Para otras ventanas, el texto es el título de la ventana. Para copiar el texto de un elemento en un cuadro de lista, una aplicación puede usar el mensaje _ LB GETTEXT.

Cuando el mensaje _ WM GETTEXT se envía a un control estático con el estilo ICON de _ SS, se devolverá un identificador al icono en los cuatro primeros bytes del búfer al que apunta lParam. Esto solo es cierto si se ha usado el mensaje _ WM SETTEXT para establecer el icono.

Edición enriquecte: Si el texto que se va a copiar supera los 64 000, use el mensaje EM _ STREAMOUT o EM _ GETSELTEXT.

El envío de un _ mensaje GETTEXT de WM a un control estático que no es de texto, como un mapa de bits estático o un control de icono estático, no devuelve un valor de cadena. En su lugar, devuelve cero. Además, en las primeras versiones de Windows, las aplicaciones podían enviar un mensaje _ GETTEXT de WM a un control estático que no es de texto para recuperar el identificador del control. Para recuperar el identificador de un control, las aplicaciones pueden usar GetWindowLong pasando el identificador de _ GWL como valor de índice o GetWindowLongPtr mediante el identificador de GWLP _.

Requisitos

Requisito Value
Cliente mínimo compatible
[Solo aplicaciones de escritorio] de Windows 2000 Professional
Servidor mínimo compatible
[Solo aplicaciones de escritorio] de Windows 2000 Server
Encabezado
Winuser.h (incluir Windows.h)

Vea también

Referencia

DefWindowProc

GetWindowLong

GetWindowLongPtr

GetWindowText

GetWindowTextLength

WM _ GETTEXTLENGTH

WM _ SETTEXT

Conceptual

Windows

Otros recursos

EM _ GETSELTEXT

STREAMOUT DE EM _

LB _ GETTEXT