Condividi tramite


Come implementare i suggerimenti a comparsa a forma di balloon

Le descrizioni comando balloon sono simili alle descrizioni comando standard, ma vengono visualizzate in un fumetto "balloon" con un gambo che punta allo strumento. Le descrizioni comando balloon possono essere a riga singola o su più righe. Vengono creati e gestiti in modo analogo alle descrizioni comando standard.

La posizione predefinita dello stelo e del rettangolo è illustrata nella figura seguente. Se lo strumento è troppo vicino alla parte superiore dello schermo, la descrizione comando viene visualizzata sotto e a destra del rettangolo dello strumento. Se lo strumento è troppo vicino al lato destro dello schermo, si applicano principi simili, ma la descrizione comandi viene visualizzata a sinistra del rettangolo dello strumento.

screenshot di una finestra di dialogo; un tooltip a palloncino con una riga di testo viene visualizzato sopra e a destra del target

È possibile modificare il posizionamento predefinito impostando il flag TTF_CENTERTIP nel membro uFlags del tooltip della struttura TOOLINFO. In tal caso, lo stelo punta normalmente al centro del bordo inferiore del rettangolo dello strumento e il rettangolo di testo viene visualizzato direttamente sotto lo strumento. Lo stelo si collega al rettangolo di testo al centro del bordo superiore. Se lo strumento è troppo vicino alla parte inferiore dello schermo, il rettangolo di testo viene centrato sopra lo strumento e lo stelo si collega al centro del bordo inferiore.

La figura seguente mostra una descrizione comando centrata sullo strumento.

screenshot di una finestra di dialogo; un tooltip a comparsa con una riga di testo appare centrato sotto il di destinazione

Se si desidera specificare dove puntano gli steli, impostare il flag di TTF_TRACK nel uFlags membro della descrizione comando struttura TOOLINFO. Specificare quindi la coordinata inviando un messaggio di TTM_TRACKPOSITION, con le coordinate x e y nel valore lParam. Se anche TTF_CENTERTIP è impostato, lo stelo punta comunque alla posizione specificata dal messaggio TTM_TRACKPOSITION.

Cosa è necessario sapere

Tecnologie

Prerequisiti

  • C/C++
  • Programmazione dell'interfaccia utente di Windows

Disposizioni

Implementare descrizioni comando balloon

Nel codice di esempio seguente viene illustrato come implementare un fumetto centrato della descrizione comando utilizzando lo stile di controllo TTS_BALLOON.

hwndToolTips = CreateWindow(TOOLTIPS_CLASS, NULL, 
                            WS_POPUP | TTS_NOPREFIX | TTS_BALLOON, 
                            0, 0, 0, 0, NULL, NULL, g_hinst, NULL);

if (hwndTooltip)
{
    TOOLINFO ti;

    ti.cbSize   = sizeof(ti);
    ti.uFlags   = TTF_TRANSPARENT | TTF_CENTERTIP;
    ti.hwnd     = hwnd;
    ti.uId      = 0;
    ti.hinst    = NULL;
    ti.lpszText = LPSTR_TEXTCALLBACK;

    GetClientRect(hwnd, &ti.rect);

    SendMessage(hwndToolTips, TTM_ADDTOOL, 0, (LPARAM) &ti );

}
            

Uso dei controlli dei suggerimenti

stili di descrizione comando