Delphi Tips&Tricks News   Tips   .NET Software   VCL Software   Search   Contacts
Ultimate Pack Special Offer!


Share this page

Follow us
LinkedIn Blogspot Twitter Facebook

Related products
Ultimate Pack  hot!
iGrid Plotter  new!
Image Editor
Runtime Fusion
Form Designer
Object Inspector
Print Suite Pro
Commented Image
Delphi Toys
WinDowse
Delphi Bonus
TMS Scripter Studio
Form Designer VB
Form Designer .NET
Print Suite .NET
Gradient Controls .NET  new!

Related links
Win32.hlp online version
MegaDetailed.NET
Delphi to C#

Special
Free Software Promotion
Offers for Resellers

Hobby projects
cdtrrracks.com
books.storrre.com
in3steps.com
sovietphillumeny.com

Create a nonstandard region of hint - Others - Tips & Tricks - Greatis Delphi Pages

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;
Related topics
Multilines hint

For more
Win32 Programmer's reference

Download source