1

Тема: AHK: Считывание клика мыши только в определенных координатах

Всем доброго времени суток. Как сделать чтоб при действие выполнялось после того как вы нажмете ЛКМ в определенной зоне ?

2

Re: AHK: Считывание клика мыши только в определенных координатах

Пример:

area1 := {left: 0, top: 0, right: 300, bottom: 300}
area2 := {left: A_ScreenWidth - 300, top: 0, right: A_ScreenWidth, bottom: 300}

#If area := MouseInArea(area1, area2)
LButton::
   if (area = 1) {
      MsgBox, Действия для зоны №1
   }
   if (area = 2) {
      MsgBox, Действия для зоны №2
   }
Return

MouseInArea(areas*) {
   CoordMode, Mouse
   MouseGetPos, x, y
   for k, area in areas {
      if (x >= area.left && x <= area.right && y >= area.top && y <= area.bottom)
         Return k
   }
}

Первая область — квадрат 300х300 в левом верхнем углу экрана, вторая — квадрат 300х300 в правом верхнем углу экрана.

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder

3

Re: AHK: Считывание клика мыши только в определенных координатах

Или так:

area1 := {left: 0, top: 0, right: 300, bottom: 300}
area2 := {left: A_ScreenWidth - 300, top: 0, right: A_ScreenWidth, bottom: 300}

#If area := MouseInArea(area1, area2)
LButton::
   Switch area {
      case 1:
         MsgBox, Действия для зоны №1
      case 2:
         MsgBox, Действия для зоны №2
   }
Return

MouseInArea(areas*) {
   CoordMode, Mouse
   MouseGetPos, x, y
   for k, area in areas {
      if (x >= area.left && x <= area.right && y >= area.top && y <= area.bottom)
         Return k
   }
}
Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder

4 (изменено: will, 2022-12-09 00:51:15)

Re: AHK: Считывание клика мыши только в определенных координатах

teadrinker
Спасибо большое. Оно нажимает и считывает действие, но теперь сама кнопка не нажимается в игре  даже когда рисовал квадратик он не хотел рисоваться. 
https://imgur.com/a/z7Zf2Zh

5

Re: AHK: Считывание клика мыши только в определенных координатах

will пишет:

teadrinker
Спасибо большое. Оно нажимает и считывает действие, но теперь сама кнопка не нажимается в игре  даже когда рисовал квадратик он не хотел рисоваться. 
https://imgur.com/a/z7Zf2Zh

В общем: Просто добавил действие клик по координатам MouseGetPos.
Спасибо огромное!

6

Re: AHK: Считывание клика мыши только в определенных координатах

will пишет:

но теперь сама кнопка не нажимается в игре

Темы по играм должны быть в соответствующей ветке, переношу. Если нужно, чтобы LButton в области сохраняла свою функцию, добавьте тильду к горячей клавише:

~LButton::
Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder