Перемещение формы не за заголовок
Written on . Posted in [Delphi] Пользовательский интерфейс. Окна и формы
Страница 1 из 3
Перетаскивание границ окна
Это описание одного из Борландовских советов:
В: Как я могу заставить форму перемещаться, щелкая и таская ее в области окна, исключая заголовок?
О: Простейший путь - "одурачить" окно, пусть оно думает, что его тастают за заголовок. Сделайте это с помощью системного сообщения wm_NCHitTest...
type
TForm1 = class(TForm)
private
{ Private-Deklarationen }
public
{ Public-Deklarationen }
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;