簡體   English   中英

如何為特定控件創建自己的自定義提示?

[英]How can I create my own custom Hint for a specific control?

我需要為特定控件(而不是整個應用程序)創建自定義提示窗口(具有其自己的顏色和布局)

提示文本本身將不會連接到該特定的Hint屬性控件。

如建議的那樣,我為CM_HINTSHOW編寫了一個處理程序(如果Control具有ShowHint=True則可以使用該處理程序):

procedure TMyControl.CMHintShow(var Message: TMessage);
begin
  Form1.caption := 'x';
  // Here I will display my own Hint window 
  // inherited;
end;

但是現在,當提示超時時,我如何知道何時/何處隱藏它? CM_HINTSHOWCM_HINTSHOWPAUSE給我此信息。

CM_HINTSHOW消息處理程序中,可以將lParamPHintInfo轉換為PHintInfo指針,然后根據需要自定義其字段。 例如,要簡單地更改背景顏色,請設置THintInfo.HintColor字段。 要更改提示的布局,可以從THintWindow派生一個新類,然后將該類類型分配給THintInfo.HintWindowClass字段。

讓VCL為您管理提示,包括顯示和隱藏提示。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM