2008-09-15 38 views

Trả lời

23

Nếu bạn đang sử dụng Tooltip điều khiển trên biểu mẫu, bạn có thể làm điều đó như thế này:

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

Các MSDN documentation for the ToolTip control's "Show" method có tất cả các các biến thể khác nhau về điều này và cách sử dụng chúng.

+5

Tôi không nghĩ rằng điều này là hoàn toàn đúng. Nếu bạn làm điều đó thì chú giải công cụ sẽ hiển thị nhưng nó cũng sẽ hiển thị mọi lúc bạn di chuyển chuột qua điều khiển ở đó sau đó. Có cách nào để chỉ hiển thị chú giải công cụ trên lệnh một lần không? – PICyourBrain

+1

Không, bằng cách sử dụng lệnh "Hiển thị" chỉ hiển thị chú giải công cụ một lần. Để làm cho chú giải công cụ hiển thị bất cứ khi nào con chuột vượt qua kiểm soát, bạn sẽ đặt thuộc tính "ToolTipText" của chính điều khiển. – Keithius

+1

Jordan S là đúng. Phương thức hiển thị đặt văn bản Mẹo Công cụ được liên kết với điều khiển được chỉ định. –

-1

Đây là mã tôi sử dụng:

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); 
    } 
} 

Gọi CreateToolTip chức năng để tạo ra một mẹo công cụ để kiểm soát nhất định.

+0

Cách nhận tham chiếu đến TOOLTIPS_CLASS, tôi gặp lỗi trình biên dịch cho HWND, TCHAR và nhiều thứ khác. Những điều này dường như không được định nghĩa trong .Net. Tôi có phải thêm một tham chiếu không? –

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

Chú giải công cụ sẽ được đặt trên điều khiển "textBox1".

Have a đọc ở đây:

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

1

Đầu tiên, bạn cần thêm điều khiển tooltip mẫu Second đính kèm điều khiển tooltip cho một số kiểm soát bạn muốn tooltip hiển thị trên (MyControl) thứ ba làm điều này: Tooltip1.Show ("Text ToolTip của tôi", MyControl)

1

Kevin, nếu bạn muốn tạo bóng của riêng mình, hãy đọc liên kết này: Task 3: Showing Balloon tips. Có đề cập đến lớp NativeMethods với hằng số TOOLTIPS_CLASS.

0

Nếu bạn tạo biến của mình ở chế độ riêng tư cho toàn bộ biểu mẫu, bạn sẽ có thể gọi phụ cho biến và điều chỉnh ngày đầu tiên.

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  
Các vấn đề liên quan