CREATE A NONSTANDARD REGION OF HINT
// ******************************************************************
// CREATE A NONSTANDARD REGION OF HINT
// Category : Hint/ToolTip
// Author : Greatis Software
// Author Email :
// Author Web : www.greatissoftware.com
// Tips Website : Greatis Software
// Tips Website URL: http://www.greatis.com/delphi/tips.html
// ******************************************************************
{
First of all, you should create a new class with ActiveHint procedure. When you
create form, you should set HintWindowClass to your new class (TMyHint).
Try this:
}
TMyHint = class(THintWindow)
private
FRegion: THandle;
public
procedure ActivateHint(Rect: TRect; const AHint: string); override;
end;
// …
procedure TMyHint.ActivateHint(Rect: TRect; const AHint: string);
begin
SetWindowRgn(Handle, 0, True);
DeleteObject(FRegion);
BoundsRect:=Rect;
FRegion:=CreateEllipticRgn(0,0,Width,Height);
SetWindowRgn(Handle, FRegion, True);
inherited ActivateHint(Rect, AHint);
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
Application.ShowHint:=False;
HintWindowClass:=TMyHint;
Application.ShowHint:=True;
end;
No comments yet.
Leave a comment
-
Archives
- November 2007 (8)
- October 2007 (32)
-
Categories
-
RSS
Entries RSS
Comments RSS