![]() |
|
|
#1
|
|||
|
|||
|
Вот ещё вопрос: как сделать, чтобы форму можно было таскать за любое место самой формы, когда форма находится в режиме BorderStyle-bsNone
Заранее благодарен. |
|
#2
|
||||
|
||||
|
код из drkb
Код:
unit DragMain;
interface
uses
SysUtils, WinTypes, WinProcs, Messages,
Classes, Graphics, Controls, Forms, Dialogs, StdCrtls;
type
TForm1 = class(TForm)
Button1: TButton;
procedure ButtonClick(Sender: TObject);
private
procedure WMNCHitTest(var M: TWMNCHitTest);
message wm_NCCHitTest;
end;
var
Form1: TForm1;
implementation
{$R *.DFM}
procedure TForm1. WMNCHitTest(var M: TWMNCHitTest);
begin
inherited;
if M.Result = htClient then
M.Result := htCaption;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
Close;
end;
end. |
|
#3
|
|||
|
|||
|
Что-то не тянет выделяет во это “message wm_NCCHitTest;” может я что-то забыл дописать в проекте ?
|
|
#4
|
||||
|
||||
|
Код:
procedure TForm1.FormMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); const SC_DRAGMOVE = $F012; begin ReleaseCapture; Form1.Perform(WM_SYSCOMMAND, SC_DRAGMOVE, 0); end; Либо делать все ручками если так не знаеш как. Обрабатывать события onMouseDown, -Up, -Move |