delphi ToolTip提示窗口单元  
官方Delphi 学习QQ群: 682628230(三千人)
频道

delphi ToolTip提示窗口单元


unit uHintWin;

interface
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls,Forms,
  Dialogs,CommCtrl;
type
  THintWin = class(THintWindow)
private
   FLastActive:   THandle;
public
   procedure  ActivateHint(Rect:TRect;Const  AHint:string);override;
end;
implementation

{ THintWin }
procedure  AddTipTool(hWnd:  DWORD;  IconType:  Integer;  Title,  Text:   PChar);
const
  TTS_BALLOON  =$0040;                 //ToolTip提示窗口的外形,指定为气球型
 TTM_SETTITLE=WM_USER  +  32;        //设置提示标题信息的消息
var
  hWndTip:  DWORD;
  ToolInfo:  TToolInfo;
begin
 hWndTip:=CreateWindow(TOOLTIPS_CLASS,  nil,
                 WS_POPUP  or  TTS_NOPREFIX  or  TTS_BALLOON  or   TTS_ALWAYSTIP ,
                 0,  0,  0,  0,  hWnd,  0,  HInstance,   nil);
  if   (hWndTip<> 0)   then
  begin
     ToolInfo.cbSize:=SizeOf(ToolInfo);                                            //设置ToolInfo的大小
     ToolInfo.uFlags:=TTF_IDISHWND  or  TTF_SUBCLASS  or  TTF_TRANSPARENT;     //设置基本风格
     ToolInfo.uId:=hWnd;                                                           //设置所有者的句柄
     ToolInfo.lpszText:=Text;
     SendMessage(hWndTip,TTM_ADDTOOL,1,Integer(@ToolInfo));
     SendMessage(hWndTip,TTM_SETTITLE,2,Integer(Title));           //设置气泡窗体的提示图标和标题信息
     SendMessage(hWndTip, TTM_SETTIPBKCOLOR, $D2FAFA,0);         //设置背景色
     SendMessage(hWndTip, TTM_SETTIPTEXTCOLOR, $4040 ,0);       //设置字体颜色
  end;
  InitCommonControls();
end;
procedure THintWin.ActivateHint(Rect: TRect; const AHint:string);
begin
 inherited;
   if   FLastActive <>WindowFromPoint(Mouse.CursorPos)  then
   AddTipTool(WindowFromPoint(Mouse.CursorPos),1,'Sherry  SoftWare',  PChar(AHint));//Application.Hint));
   FLastActive:=WindowFromPoint(Mouse.CursorPos);
end;

initialization
  Application.HintPause:=0;
  Application.ShowHint:=False;
  HintWindowClass:=THintWin;
  Application.ShowHint:=True;
end.

推荐分享
图文皆来源于网络,内容仅做公益性分享,版权归原作者所有,如有侵权请告知删除!
 

Copyright © 2014 DelphiW.com 开发 源码 文档 技巧 All Rights Reserved
晋ICP备14006235号-8 晋公网安备 14108102000087号

执行时间: 0.093284130096436 seconds