Mega Code Archive

 
Categories / Delphi / Examples
 

Floating toolbar

All you have to do is handle Windows' wm_NCHitTest message. (Compare to the tip how to drag a window without a caption bar. It's the same technique.) // original by Steve Teixeira unit Dragmain; interface uses SysUtils, WinTypes, WinProcs, Messages, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type TForm1 = class(TForm) Button1: TButton; procedure Button1Click(Sender: TObject); private procedure WMNCHitTest(var M: TWMNCHitTest); message wm_NCHitTest; end; var Form1: TForm1; implementation {$R *.DFM} procedure TForm1.WMNCHitTest(var M: TWMNCHitTest); begin inherited; { call the inherited message handler } if M.Result = htClient then { is the click in the client area? } M.Result := htCaption; { if so, make Windows think it's } { on the caption bar. } end; procedure TForm1.Button1Click(Sender: TObject); begin Close; end; end.