Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

как с эмитировать нажатие правой/левой кнопки мыши? [D7, XP]


asd00 ©   (2007-11-09 19:36:00) 

как с эмитировать нажатие правой/левой кнопки мыши?


Германн   (2007-11-10 02:02:00) [1]


> asd00   (09.11.07 19:36)

Может озвучишь вразумительно свою задачу?


Leonid Troyanovsky   (2007-11-10 01:52:00) [2]


> asd00   (10.11.07 00:19) [11]

> когда правой кнопкой по рабочему столу щелкнеш...и будет
> ли это работать когда окно формы уже не активно?

Не активно бывают разные.

--
Regards, LVT.


asd00   (2007-11-10 00:19:00) [3]

извините а это действует только на форме или по всему экрану? а то что то не работает...должно было меню появится как когда правой кнопкой по рабочему столу щелкнеш...и будет ли это работать когда окно формы уже не активно?


Dib@zol   (2007-11-09 21:06:00) [4]

> нижний левый угол экрана.

Изиняюсь - нижний ПРАВЫЙ. То есть, координаты точки, по которой тебе захотелось "щёлкнуть", надо отмасштабировать в этот диапазон.


Dib@zol   (2007-11-09 21:01:00) [5]

mouse_event(MOUSEEVENTF_ABSOLUTE or [доп. флаг], [X-коорд.], [Y-коорд.], 0, 0);

где доп. флаг начинается на MOUSEEVENTF_ а кончается на DOWN или UP.
MOUSEEVENTF_LEFTDOWN
MOUSEEVENTF_RIGHTDOWN
MOUSEEVENTF_MIDDLEDOWN
MOUSEEVENTF_LEFTUP
MOUSEEVENTF_RIGHTUP
MOUSEEVENTF_MIDDLEUP

х- и у-коорд. это константы от 0 до 65535, где (65535, 65535) - нижний левый угол экрана.

Чтобы "сделать клик" мышой, надо создать 2 последовательных эвента с DOWN и UP соответсно.


Leonid Troyanovsky   (2007-11-09 20:56:00) [6]


> asd00   (09.11.07 20:49) [6]

> а ежели не знаем какой там компонент подвернется?

Бей своих, чтоб чужие боялись.

--
Regards, LVT.


ProgRAMmer Dimonych   (2007-11-09 20:53:00) [7]

> asd00   (09.11.07 20:49) [6]
> а ежели не знаем какой там компонент подвернется?

О том, что надо имитировать щелчок избирательно, речи не шло. :)


asd00   (2007-11-09 20:49:00) [8]

а ежели не знаем какой там компонент подвернется?


Dib@zol   (2007-11-09 20:44:00) [9]

А хелп то почитать, оно как? Сложно? ;)
var P:TPoint;
...
GetCursorPos(P);
SendMessage([Компонент, на кого нажимаем].Handle, WM_LBUTTONDOWN, MK_LBUTTON, MakeLParam(LOWORD(P.X), LOWORD(P.Y)));


asd00   (2007-11-09 20:27:00) [10]

SendMessage(WM_LBUTTONDOWN);??


Dib@zol   (2007-11-09 20:17:00) [11]

SendMessage();


asd00   (2007-11-09 19:52:00) [12]

как отправить?


TUser   (2007-11-09 19:40:00) [13]

WM_LBUTTONDOWN и другие аналогичные сообщения


Наверх

Титульная страница Поиск, карта сайта Написать письмо