Compartilhar via


WM_GETTEXT mensagem

Copia o texto que corresponde a uma janela em um buffer fornecido pelo chamador.

#define WM_GETTEXT                      0x000D

Parâmetros

wParam

O número máximo de caracteres a serem copiados, incluindo o caractere nulo de terminação.

Os aplicativos ANSI podem ter a cadeia de caracteres no buffer reduzida em tamanho (para um mínimo de metade do valor wParam ) devido à conversão de ANSI para Unicode.

lParam

Um ponteiro para o buffer que deve receber o texto.

Valor retornado

Tipo: LRESULT

O valor retornado é o número de caracteres copiados, não incluindo o caractere nulo de terminação.

Comentários

A função DefWindowProc copia o texto associado à janela para o buffer especificado e retorna o número de caracteres copiados. Observe que, para controles estáticos que não são de texto, isso fornece o texto com o qual o controle foi criado originalmente, ou seja, o número de ID. No entanto, ele fornece a ID do controle estático que não é de texto, conforme criado originalmente. Ou seja, se você posteriormente usou uma STM_SETIMAGE para alterá-la, a ID original ainda seria retornada.

Para um controle de edição, o texto a ser copiado é o conteúdo do controle de edição. Para uma caixa de combinação, o texto é o conteúdo da parte de controle de edição (ou texto estático) da caixa de combinação. Para um botão, o texto é o nome do botão. Para outras janelas, o texto é o título da janela. Para copiar o texto de um item em uma caixa de listagem, um aplicativo pode usar a mensagem LB_GETTEXT .

Quando a mensagem WM_GETTEXT é enviada para um controle estático com o estilo SS_ICON , um identificador para o ícone será retornado nos quatro primeiros bytes do buffer apontado por lParam. Isso será verdadeiro somente se a mensagem WM_SETTEXT tiver sido usada para definir o ícone.

Edição avançada: Se o texto a ser copiado exceder 64K, use a mensagem EM_STREAMOUT ou EM_GETSELTEXT .

O envio de uma mensagem de WM_GETTEXT para um controle estático que não seja de texto, como um bitmap estático ou um controle de ícone estático, não retorna um valor de cadeia de caracteres. Em vez disso, ele retorna zero. Além disso, nas primeiras versões do Windows, os aplicativos podem enviar uma mensagem de WM_GETTEXT para um controle estático sem texto para recuperar a ID do controle. Para recuperar a ID de um controle, os aplicativos podem usar GetWindowLong passando GWL_ID como o valor de índice ou GetWindowLongPtr usando GWLP_ID.

Requisitos

Requisito Valor
Cliente mínimo com suporte
Windows 2000 Professional [somente aplicativos da área de trabalho]
Servidor mínimo com suporte
Windows 2000 Server [somente aplicativos da área de trabalho]
Cabeçalho
Winuser.h (inclua Windows.h)

Confira também

Referência

DefWindowProc

Getwindowlong

GetWindowLongPtr

Getwindowtext

GetWindowTextLength

WM_GETTEXTLENGTH

WM_SETTEXT

Conceitual

Windows

Outros recursos

EM_GETSELTEXT

EM_STREAMOUT

LB_GETTEXT