![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
таскание формы без головы [D6, Win95/98, WinXP]
acidman © (2004-01-19 11:23:00)Вопрос в следующем , я создаю форму типа none , не имеющая заголовка
как мне сделать так чтобы можно было таскать форму за любой компонент?
а то она как скреетилась так и хрен сдвинеш?
жду ответа!!!! за рание спасибо!!!
tp (2004-01-19 17:11:00) [1]procedure TForm1.FormMouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
ReleaseCapture;
SendMessage(Form1.Handle, wm_SysCommand,$f012,0);
end;
easy (2004-01-19 11:56:00) [2]procedure TForm1.FormMouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
ReleaseCapture();
SendMessage(form1.Handle, WM_NCLBUTTONDOWN, HTCAPTION, 0);
end;
alless (2004-01-19 11:33:00) [3]type
TForm1 = class(TForm)
private
public
procedure WMNCHitTest(var M: TWMNCHitTest); message wm_NCHitTest;
end;
var
Form1: TForm1;
implementation
{$R *.DFM}
procedure TForm1.WMNCHitTest(var M: TWMNCHitTest);
begin
inherited; { вызов унаследованного обработчика события }
if M.Result = htClient then { кликнув в области окна? }
M.Result := htCaption; { если так, то мы заставили Windows думать, }
{ что щелчок был на заголовке окна. }
end;