Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.03.04;
Скачать: CL | DM;

Вниз

Как получить клик мышкой   Найти похожие ветки 

 
НиколайКо   (2007-02-09 13:21) [0]

Как получить клик мышкой на экране, а не только на форме?


 
Правильный Вася   (2007-02-09 13:23) [1]

подставить форму под место клика

ps винда посылает клики туда куда считает нужным
она не считает нужным посылать их в твою прогу если кликают куда-то в другое место


 
RASkov   (2007-02-09 13:33) [2]

Mouse_Event();


 
НиколайКо   (2007-02-09 15:48) [3]

Точнее вопрос задам:
1. Как мне отловить клик (а не кликнуть) мышой по экрану?

2. А можно ли без подсовывания формы под мышку?


 
Loginov Dmitry ©   (2007-02-09 16:03) [4]

Мышеловку пиши.


 
trubin ©   (2007-02-09 18:46) [5]

SetWindowsHookEx + WH_Mouse = море примеров в инете


 
RASkov   (2007-02-09 19:26) [6]

> [3] НиколайКо   (09.02.07 15:48)

GetAsyncKeyStat()


 
trubin ©   (2007-02-09 20:37) [7]


> RASkov   (09.02.07 19:26) [6]
> > [3] НиколайКо   (09.02.07 15:48)
>
> GetAsyncKeyStat()


Ему же сам момент надо отловить


 
RASkov   (2007-02-10 01:14) [8]

> [7] trubin ©   (09.02.07 20:37)

По таймеру пусть ловит...


 
UrbanRider   (2007-02-10 01:23) [9]

Создание мышиного перехватчика

   library hookdemo;

   uses

   beeper in "deldemoshookdemobeeper.pas";

   exports

   sethook index 1,
   unhookhook index 2,
   hookproc index 3;

   begin

   hookedalready:=false;
   end.

   , где beeper.pas содержит следующий код:

   unit beeper;

   interface

   uses wintypes, winprocs, messages;

   function sethook: boolean; export;
   function unhookhook: boolean; export;
   function hookproc(code: integer; wparam: word;
   lparam: longint): longint; export;

   var
   hookedalready: boolean;

   implementation

   var
   ourhook: hhook;

   function sethook: boolean;
   begin
   if hookedalready then
   exit;
   ourhook := setwindowshookex(wh_mouse, hookproc, hinstance, 0);
   hookedalready := true;
   end;

   function unhookhook: boolean;
   begin
   unhookwindowshookex(ourhook);
   hookedalready := false;
   end;

   function hookproc(code: integer; wparam: word;
   lparam: longint): longint;
   begin
   if (wparam = wm_lbuttondown) then
   messagebeep(0);
   result := callnexthookex(ourhook, code, wparam, lparam);
   end;

   end.
   Теперь, при вызове из приложения функции sethook, при каждом нажатии левой кнопки мыши будет раздаваться сигнал - до тех пор, пока вы не вызовете функцию unhookhook. В действующем приложении возвращаемое функцией callnexthookex значение < 0 сведетельствует об отсутствии манипуляций с мышью.
   Источник:
   x-program

Яндекс творит чудеса чувак...


 
RASkov   (2007-02-10 01:51) [10]

procedure TForm1.Timer1Timer(Sender: TObject);
begin
 if (GetAsyncKeyState(VK_LBUTTON) <> 0) then Caption:="нажата левая кнопка"
  else if (GetAsyncKeyState(VK_RBUTTON) <> 0) then Caption:="нажата правая кнопка"
   else Caption:="кнопки не нажаты";
end;



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

Текущий архив: 2007.03.04;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.053 c
6-1158652641
pirate
2006-09-19 11:57
2007.03.04
Элементарная передача строк


11-1150290707
AndreyRus
2006-06-14 17:11
2007.03.04
PopUpMenu.Enabled:= false; // Bug!


2-1171278318
Sapos
2007-02-12 14:05
2007.03.04
ComboBox


2-1171544311
vdmm
2007-02-15 15:58
2007.03.04
Программно создать таблицу в RichEdit


4-1161168734
DevilDevil
2006-10-18 14:52
2007.03.04
TBitmap.Transparent