Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2005.10.02;
Скачать: [xml.tar.bz2];

Вниз

Глобальное положение мыши   Найти похожие ветки 

 
Alex_C ©   (2005-09-13 11:59) [0]

Дано: есть приложение с несколькими формами.
Надо: написать ф-цию. которая отслеживала бы текещее положение мыши где бы она не находилась.
Если просто отслеживаю WM_MOUSEMOVE - то отслеживается только у конкретного окна.


 
Наиль ©   (2005-09-13 12:28) [1]

Глупо, но верно:
по таймеру Mouse.CursorPos


 
kblc ©   (2005-09-13 12:42) [2]

Windows.GetCursorPos(var lpPoint: TPoint): LongBool;


 
Alex_C ©   (2005-09-13 16:51) [3]

C a-wbtq которая ОПРЕДЕЛЯЕТ текущее положение мыши - тут все понятно, GetCursorPos, а вот как ОТСЛЕЖИВАТЬ перемещение по всему экрану, чтоб как только мышь окажется в како-то его области, делать какое либо действие? Как я уже писал выше, если использовать WM_MOUSEMOVE то отслеживается только в той форме, где оно определено.


 
Big Joe ©   (2005-09-13 17:20) [4]

procedure TForm1.FormClick(Sender: TObject);
var
 MyMouse: TMouse;
begin
 Form1.Caption := inttostr(MyMouse.CursorPos.x) + "Х " +
 inttostr(MyMouse.CursorPos.y);
end;


 
Кефир87 ©   (2005-09-14 00:35) [5]


var
 p:TPoint;
begin
 GetCursorPos(p);
 if (p.x>10)and(p.x<50)and(bla-bla-bla) then
    ShowMessage("Ваша мышь там");
end;


 
Юрий Зотов ©   (2005-09-14 00:45) [6]

> Big Joe ©   (13.09.05 17:20) [4]
1. И будет Access Violaion.
2. Вы ветку читали?

> Кефир87 ©   (14.09.05 00:35) [5]
Вы ветку читали?

> Alex_C ©   (13.09.05 16:51) [3]
Нужен глобальный хук на мышь. В сети примеров полно, ищите по ключевому слову SetWindowsHook.


 
Германн ©   (2005-09-14 01:36) [7]

2 Юрий Зотов ©   (14.09.05 00:45) [6]
А из сабжа, имхо, не следует необходимость "глобального хука" :(


> Дано: есть приложение с несколькими формами.
> Надо: написать ф-цию. которая отслеживала бы текещее положение
> мыши где бы она не находилась.

Это, в частности, можно понять и как "отслеживание мыши в одном приложении имеющим несколько форм. В каком бы месте, любой формы(окна) приложения, она бы не находилась".


 
Юрий Зотов ©   (2005-09-14 04:36) [8]

> Германн ©   (14.09.05 01:36) [7]

Разве в ветках надо читать только сабж? А то, что написали ранее - не надо?

См. [3]:
"... как ОТСЛЕЖИВАТЬ перемещение по всему экрану..."

Что и есть глобальный хук.



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

Форум: "Основная";
Текущий архив: 2005.10.02;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.005 c
1-1126183793
Толян
2005-09-08 16:49
2005.10.02
подсчет трафика


1-1126024282
ДимДимыч
2005-09-06 20:31
2005.10.02
Выполнение скриптов


1-1126271263
Yuri Btr
2005-09-09 17:07
2005.10.02
Установка иконки программы


1-1126162964
Zloj
2005-09-08 11:02
2005.10.02
Как получить значение возвроўаемое софтом?


1-1126337424
PIA
2005-09-10 11:30
2005.10.02
Нужна библиотека для вычисления производных и интегралов.





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский