![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как поймать щелчок мыши по границе формы? [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]Что значит "рамке"?