Compartilhar via


TTM_ADJUSTRECT mensagem

Calcula o retângulo de exibição de texto de um controle de dica de ferramenta de seu retângulo de janela ou o retângulo da janela de dica de ferramenta necessário para exibir um retângulo de exibição de texto especificado.

Parâmetros

wParam

Valor que especifica qual operação executar. Se TRUE, lParam será usado para especificar um retângulo de exibição de texto e receberá o retângulo de janela correspondente. Se FALSE, lParam será usado para especificar um retângulo de janela e receberá o retângulo de exibição de texto correspondente.

lParam

Estrutura RECT para manter um retângulo de janela de dica de ferramenta ou um retângulo de exibição de texto.

Valor retornado

Retornará um valor diferente de zero se o retângulo for ajustado com êxito e retornará zero se ocorrer um erro.

Comentários

Essa mensagem é particularmente útil quando você deseja usar um controle de dica de ferramenta para exibir o texto completo de uma cadeia de caracteres que geralmente é truncada. Ele é comumente usado com controles de visão de lista e visão de árvore. Normalmente, você envia essa mensagem em resposta a um código de notificação TTN_SHOW para que possa posicionar o controle de dica de ferramenta corretamente.

O retângulo da janela de dica de ferramenta é um pouco maior do que o retângulo de exibição de texto que vincula a cadeia de caracteres de dica de ferramenta. A origem da janela também é deslocada para cima e para a esquerda da origem do retângulo de exibição de texto. Para posicionar o retângulo de exibição de texto, você deve calcular o retângulo de janela correspondente e usar esse retângulo para posicionar a dica de ferramenta. TTM_ADJUSTRECT manipula esse cálculo para você.

Se você definir wParam como TRUE, TTM_ADJUSTRECT assumirá o tamanho e a posição do retângulo de exibição de texto de dica de ferramenta desejado e retornará o tamanho e a posição da janela de dica de ferramenta necessária para exibir o texto na posição especificada. Se você definir wParam como FALSE, poderá especificar um retângulo de janela de dica de ferramenta e TTM_ADJUSTRECT retornará o tamanho e a posição do retângulo de texto.

O fragmento de código a seguir ilustra o uso da mensagem TTM_ADJUSTRECT para posicionar um controle de dica de ferramenta para exibir o texto completo da cadeia de caracteres de um controle no lugar de uma cadeia de caracteres truncada. A função GetMyItemRect definida pelo aplicativo retorna o retângulo de texto que será necessário para exibir o texto da dica de ferramenta diretamente sobre a cadeia de caracteres truncada. Os detalhes de como essa função é implementada dependerão do controle específico. TTM_ADJUSTRECT é usado para enviar esse retângulo de texto para o controle de dica de ferramenta. Ele retorna um retângulo de janela de tamanho apropriado e posicionado que, em seguida, é usado para posicionar a janela de dica de ferramenta.

case TTN_SHOW:

if (MyStringIsTruncated) {
    RECT rc;
    
    GetMyItemRect(&rc);
    SendMessage(hwndToolTip, TTM_ADJUSTRECT, TRUE, (LPARAM)&rc);
    SetWindowPos(hwndToolTip,
                 NULL,
                 rc.left, rc.top,
                 0, 0,
                 SWP_NOSIZE|SWP_NOZORDER|SWP_NOACTIVATE);
} 

Requisitos

Requisito Valor
Cliente mínimo com suporte
Windows Vista [somente aplicativos da área de trabalho]
Servidor mínimo com suporte
Windows Server 2003 [somente aplicativos da área de trabalho]
Cabeçalho
Commctrl.h