Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как поймать щелчок мыши по границе формы? [D7, XP]


smaller ©   (2006-12-20 14:45:00) 

В аппликации открыто одно окно, нужна поймать щелчок  мыши по его рамке.


smaller   (2006-12-20 17:02:00) [1]

Many thanks и спасибо, все работает.


smaller   (2006-12-20 16:08:00) [2]

"...не ловятся или не получилось?"
Видимо не ловятся-что в нислеследующем может не получиться?

procedure TMainW.ApplicationEvents1Message(var Msg: tagMSG;
 var Handled: Boolean);
begin
 if  msg.message = WM_NCLBUTTONUP
 then begin
        Label1.Caption:= IntTostr(round( Random(1000)));
      end;
end;

(а с тем, что советует easy, cейчас попробую разобраться)


easy   (2006-12-20 15:34:00) [3]

unit Unit1;

interface

uses
 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
 Dialogs;

type
 TForm1 = class(TForm)
 private
   { Private declarations }
   procedure WMNCLBUTTONDOWN(var msg: TWMNCLBUTTONDOWN); message WM_NCLBUTTONDOWN;
 public
   { Public declarations }
 end;

var
 Form1: TForm1;

implementation

{$R *.dfm}

{ TForm1 }

procedure TForm1.WMNCLBUTTONDOWN(var msg: TWMNCLBUTTONDOWN);
begin
inherited;
case msg.HitTest of
  HTTOPLEFT:Caption:='TOP-LEFT';
  HTTOPRIGHT:Caption:='TOP-RIGHT';
  HTBOTTOMRIGHT:Caption:='BOTTOM-RIGHT';
  HTBOTTOMLEFT:Caption:='BOTTOM-LEFT';
  HTRIGHT:Caption:='RIGHT';
  HTLEFT:Caption:='LEFT';
  HTTOP:Caption:='TOP';
  HTBOTTOM:Caption:='BOTTOM';
end;
end;


Anatoly Podgoretsky   (2006-12-20 15:20:00) [4]

> smaller  (20.12.2006 15:16:04)  [4]

А что значит увы, не ловятся или не получилось?


smaller   (2006-12-20 15:16:00) [5]

Увы! Нет эффекта.


Ega23   (2006-12-20 15:04:00) [6]

Посмотри WM_NCLBUTTONDOWN, WM_NCLBUTTONUP, WM_NCLBUTTONDBLCLK


smaller   (2006-12-20 14:56:00) [7]

То есть Border. А вообще по любому месту, за которое форму берут, чтобы изменить ее размер.

В ApplicationEvent.OnMessage  события WM_LBUTTONUP  WM_LBUTTDOWN  в этой области не ловятся.


Ega23   (2006-12-20 14:47:00) [8]

Что значит "рамке"?


Наверх

Титульная страница Поиск, карта сайта Написать письмо