Вниз
Скачать: CL | DM;

Как словить WM_WINDOWPOSCHANGING и кильнуть его. Без хука?   Найти похожие ветки 

← →
NeyroSpace ©   (2002-09-25 16:05) [0]

Извиняюсь уже было, но память...


← →
Song ©   (2002-09-25 16:10) [1]

А где ловить? В проге или в системе?


← →
NeyroSpace ©   (2002-09-25 16:23) [2]

Проблема отчасти решена... Но все-таки интересно, впоймать и кильнуть, чтобы дальше оно не пошло.



unit Unit1;

interface

uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
AppEvnts, StdCtrls;

type
TForm1 = class(TForm)
ApplicationEvents1: TApplicationEvents;
Edit1: TEdit;
Edit2: TEdit;
Edit3: TEdit;
Edit4: TEdit;
Edit5: TEdit;
Edit6: TEdit;
Memo1: TMemo;
procedure ApplicationEvents1Message(var Msg: tagMSG;
var Handled: Boolean);
private
procedure WMWindowPosChanging(var Message: TWMWindowPosChanging); message WM_WINDOWPOSCHANGING;
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;

implementation

{$R *.DFM}

procedure TForm1.WMWindowPosChanging(var Message: TWMWindowPosChanging);
begin
Edit1.Text := "Message.x=" + inttostr(Message.WindowPos.x);
Edit2.Text := "Message.y=" + inttostr(Message.WindowPos.y);
Edit3.Text := "Message.cx=" + inttostr(Message.WindowPos.cx);
Edit4.Text := "Message.cy=" + inttostr(Message.WindowPos.cy);

Message.WindowPos.x := 0;
//inherited;
end;


← →
Song ©   (2002-09-25 16:35) [3]

Message.Result:=...
А за место точек число, которое описано в хэлпе.


← →
NeyroSpace ©   (2002-09-25 18:03) [4]

Не сработало. Как сделать так, чтобы это сообщение дальше не пошло? (т.е. окно с места не сдвинулось?)


← →
Song ©   (2002-09-25 18:19) [5]

А чего возвращали-то?


← →
Almaz ©   (2002-09-26 02:00) [6]


> Song © (25.09.02 18:19)
> А чего возвращали-то?

Это уведомительное сообщение - что кроме нуля можно возвратить ?


> NeyroSpace © (25.09.02 18:03)
> Не сработало. Как сделать так, чтобы это сообщение дальше
> не пошло? (т.е. окно с места не сдвинулось?)

Вот так:

procedure TForm1.WMWindowPosChanging(var Message: TWMWindowPosChanging);
begin
Message.WindowPos.flags := Message.WindowPos.flags or SWP_NOMOVE;
end;


Чтобы размер не изменялся - SWP_NOSIZE и т.п.

Удачи.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.011 c
3-21374
CashDi
2002-10-17 15:11
2002.11.07
Установка клиента


1-21502
cybermonk
2002-10-24 12:55
2002.11.07
Word


14-21740
dimonf
2002-10-17 17:26
2002.11.07
Народ, подскажите как вытащить данные из базы данных.


4-21858
d-coder
2002-09-24 03:12
2002.11.07
Так знает кто-нибудь ответ?????


4-21896
vap
2002-09-24 14:11
2002.11.07
имя EXE зная hWnd




   Наверх