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

Помогите разобраться c WM_LMOUSEDOWN   Найти похожие ветки 

← →
MetalFan ©   (2002-07-23 13:35) [0]

Надо: поймать нажатие мышкой на TAnimate
Делаю:
....
procedure WMLbuttondown(var MSG:TWMLButtonDown); Message WM_LBUTTONDOWN;
.....
Procedure TForm1.WMLbuttondown(var MSG:TWMLButtonDown);
begin
ShowMessage(IntToStr(MSG.XPos)+" "+IntToStr(MSG.YPos));
if (MSG.XPos>Animate1.Left)and(MSG.yPos>Animate1.Top)and
(MSG.XPos<(Animate1.Left+Animate1.width))and
(MSG.yPos<(Animate1.Top+Animate1.Height)) then
begin
..........
end;
inherited;
end;
......
Неработает :(((
Но ошибок не выдает!!!
Уважаемы мастера, может я что-нибудь не так сделал?


← →
MetalFan ©   (2002-07-23 14:05) [1]

понятно, вопрос глупый, но хоть кто-нить может ответить????


← →
MBo ©   (2002-07-23 14:37) [2]

у тебя метод формы, а не Animate.


← →
Song ©   (2002-07-23 14:51) [3]


type MyAnimate=class(TAnimate)
private
Procedure MyAnimateMousePress(Var Msg:TMessage); message WM_LBUTTONDOWN;
end;

type
TForm1 = class(TForm)
Button1: TButton;
Button2: TButton;
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;
Anim:MyAnimate;

implementation

{$R *.dfm}

Procedure MyAnimate.MyAnimateMousePress(Var Msg:TMessage);
Begin
Case Msg.WParam OF
MK_LBUTTON: Anim.Play(1,Anim.FrameCount,Anim.FrameCount);
MK_RBUTTON: Anim.Stop;
else inherited;
End;
End;

procedure TForm1.FormCreate(Sender: TObject);
begin
Anim:=MyAnimate.Create(Self);
With Anim Do
Begin
Parent:=Self;
FileName:="c:\ICQworking.avi";
End;
end;


← →
Melamed ©   (2002-07-23 18:28) [4]

Твой обрабодчик события WM_LBUTTONDOWN будет вызываться только при нажатии левой клавиши мыши.
Если хочешь, чтоб твоя программа реагировала должным образом на нажатие правой клавиши мыши, то обрабатывай событие WM_RBUTTONDOWN.

Подробнее, читай WIN32 SDK

Желаю успеха
Валера


← →
Song ©   (2002-07-23 18:33) [5]

Ну да, пропустил, правильно. :-)
Я его не тестировал же. Просто в форме написал. Смысл не в том. Автору нужно было левую кнопку ;-)


← →
MetalFan ©   (2002-07-24 12:17) [6]

Спасибо ответившим!!!
только мне нужно чуть по-другому:
есть TAnimate, нужно, чтобы при клике на нем
происходило какое-то действие... например появлялось окно "о программе"



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

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



Память: 0.46 MB
Время: 0.013 c
1-50846
Mazenrat
2002-09-04 15:04
2002.09.16
Айпишный аналог Application.ProcessMessages?


1-50679
Guzz
2002-09-04 19:53
2002.09.16
Вопрос по активизации форм


3-50576
7Up
2002-08-23 10:49
2002.09.16
ODBC для Delphi (продолжение)


1-50723
BT
2002-09-05 13:26
2002.09.16
Published and Variant


1-50688
fishca
2002-09-03 12:00
2002.09.16
Delphi7




   Наверх