2008-09-15 10 views

Respuesta

23

Si está utilizando el control Tooltip en el formulario, puede hacerlo de esta manera:

ToolTip1.Show("Text to display", Control)

El MSDN documentation for the ToolTip control's "Show" method tiene todas las diferentes variaciones sobre esto y cómo usarlas.

+5

No creo que esto sea del todo correcto. Si lo hace, se mostrará la información sobre herramientas, pero también se mostrará cada vez que mueva el mouse sobre el control allí después. ¿No hay una forma de mostrar solo la información sobre herramientas en el comando una vez? – PICyourBrain

+1

No, el uso del comando "Mostrar" muestra la información sobre herramientas solo esa vez. Para hacer que la información sobre herramientas aparezca en cualquier momento que el mouse esté sobre el control, establecería la propiedad "ToolTipText" del control mismo. – Keithius

+1

Jordan S tiene razón. El método Show establece el texto de información sobre herramientas asociado con el control especificado. –

-1

Este es el código que utilizo:

static HWND hwndToolTip = NULL; 

void CreateToolTip(HWND hWndControl, TCHAR *tipText) 
{ 
    BOOL success; 

    if(hwndToolTip == NULL) 
    { 
    hwndToolTip = CreateWindow( TOOLTIPS_CLASS, 
           NULL, 
           WS_POPUP | TTS_NOPREFIX | TTS_ALWAYSTIP,          
           CW_USEDEFAULT, CW_USEDEFAULT, 
           CW_USEDEFAULT, CW_USEDEFAULT,          
           NULL, NULL, 
           hInstResource, 
           NULL); 
    } 

    if(hwndToolTip) 
    { 
    TOOLINFO ti; 

    ti.cbSize = sizeof(ti); 
    ti.uFlags = TTF_TRANSPARENT | TTF_SUBCLASS; 
    ti.hwnd  = hWndControl; 
    ti.uId  = 0; 
    ti.hinst = NULL; 
    ti.lpszText = tipText; 

    GetClientRect(hWndControl, &ti.rect); 

    success = SendMessage(hwndToolTip, TTM_ADDTOOL, 0, (LPARAM) &ti); 
    } 
} 

función CreateToolTip llamada para crear una punta de herramienta para un cierto control.

+0

Cómo obtener referencia a TOOLTIPS_CLASS, obtengo un error de compilación para HWND, TCHAR y muchos más. Estos no parecen estar definidos en .Net. ¿Debo agregar una referencia? –

9
System.Windows.Forms.ToolTip ToolTip1 = new System.Windows.Forms.ToolTip(); 
ToolTip1.SetToolTip(this.textBox1, "Hello"); 

La información sobre herramientas se establecerá sobre el control "textBox1".

tener una lectura aquí:

http://msdn.microsoft.com/en-us/library/aa288412.aspx

1

primero que hay que añadir el control de información sobre herramientas a la forma Segunda adjuntar el control de información sobre herramientas a algún tipo de control que desea la descripción para mostrar en (MyControl) Tercera hacer esto: Tooltip1.Show ("Mi información sobre herramientas de texto", MyControl)

0

Si crea su variable privada para todo el formulario, podrá llamar al sub para el y ajustar el retraso inicial.

Public Class MyForm   
Private MyTooltip As New ToolTip   
...   
Sub ApplyToolTips   
'For default   
ApplyToolTips (1000)   
End Sub   

Sub ApplyTooltips (ByVal Delay as Integer)   

MyTooltip .InitialDelay = Delay   
MyTooltip.AutoPopDelay = 5000   
...   
MyTooltip.SetToolTip(Me.btnClose, "Close the form")   

End Sub  

Private Sub Btn_Click(sender As System.Object, e As System.EventArgs) Handles Btn.Click   
    Dim PicBox As PictureBox = CType(sender, PictureBox)   
    ApplyTooltips (0)  
    ApplyTooltips (1000)  
End Sub  
Cuestiones relacionadas