Здравствуйте, гость ( Вход | Регистрация )

> Распознавание нажатий клавиш клавиатуры
qimer
сообщение 24.8.2020, 14:47
Сообщение #1


*

Registred
Сообщений: 5
Регистрация: 24.8.2020
Группа: Пользователи
Наличность: 0
Пользователь №: 19.729



Здравствуйте! Прошерстил вроде бы весь мануал по UOPilot но нигде не нашел как прога могла бы считывать нажатия клавиш. Т.е. к примеру есть такая задача, как отметить окна в игре, и чтобы он именно в них искал некие изображения, а не по всему экрану. И это бы осуществлялось например так: подводишь мышь к левому верхнему углу окна и жмешь "пробел", а потом к правому нижнему и тоже нажимаешь "пробел". Очень необходима эта функция и для других реализаций. Очень не хватает справки по всем возможностям программы. Я очень надеюсь, что такая возможность в ней есть

upd: нашел как реализовать одну клавишу через ascii-коды, а как реализовать например "Alt+1"

Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
 
Ответить в эту темуОткрыть новую тему
Ответов
cirus
сообщение 25.8.2020, 1:48
Сообщение #2


**********

Elder
Сообщений: 3.480
Регистрация: 18.8.2014
Группа: Пользователи
Наличность: 26756
Пользователь №: 16.971
Возраст: 29



Цитата
где-нибудь есть полный список команд для uopilot?

https://uopilot.uokit.com/wiki/index.php?ti...к_функций_(Lua)
Если каких-то функций нет, то можно через ffi вызвать любую функцию winapi.
Цитата
нужно отслеживать изменения

Код
--lua
log 'clear' log 'mode compact'

local window = workwindow()
local startX, startY, endX, endY = 90, 108 , 144, 158   -- координаты
local address = getimage (startX, startY, endX, endY, window)  -- запомнили изображение

log('Ждём когда изображение изменится')
while true do
    local arr, a = findimage (startX, startY, endX, endY, {address}, window)  -- поиск
    if arr == nil then  -- если не найдено значит изображение изменилось
        break           -- выход из цикла
    end
    wait(100)
end
log('Изображение изменилось')
deleteimage (address)   -- удалить картинку
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
apaul
сообщение 4.10.2021, 20:14
Сообщение #3


**

Neophyte
Сообщений: 36
Регистрация: 19.8.2021
Группа: Пользователи
Наличность: 0
Пользователь №: 20.051



Цитата(cirus @ 25.8.2020, 1:48) *

local arr, a = findimage (startX, startY, endX, endY, {address}, window) -- поиск

Какая полезная штука (IMG:style_emoticons/default/smile.gif).
Только у меня почему-то пример пролетает сразу в "Изображение изменилось", настраиваю для теста кусок фона на форуме. Вроде он здесь статичный. Можно как-то понять, что ему не нравится?

Заодно стало интересно, а как findimage понимает в таком вызове размер шаблона поиска, ведь ему передается чисто его адрес в памяти?
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения

Сообщений в этой теме
qimer   Распознавание нажатий клавиш клавиатуры   24.8.2020, 14:47
cirus   --lua local ffi = require("ffi") f...   24.8.2020, 15:13
qimer   [spoiler=код][code]--lua local ffi = require...   24.8.2020, 15:21
фонарик   [spoiler=код][code]--lua local ffi = require...   4.10.2021, 16:23
cirus   --lua local ffi = require("ffi") f...   24.8.2020, 15:29
qimer   Спасибо больше, cirus! Что бы я без тебя делал...   24.8.2020, 15:39
qimer   cirus, где-нибудь есть полный список команд для uo...   24.8.2020, 18:51
nykep   cirus, где-нибудь есть полный список команд для u...   25.8.2020, 15:45
Fors1k   Где-нибудь есть полный список команд для uopilot?...   25.8.2020, 18:38
cirus   --lua local ffi = require("ffi") ...   5.10.2021, 1:55
фонарик   Товарищ cirus, спасибо вам, пробел отслеживается к...   5.10.2021, 23:33
cirus   --lua local ffi = require("ffi") l...   6.10.2021, 2:08
sutra   Вообще крайне полезная вещь. У меня с тех пор, как...   6.10.2021, 16:02
фонарик   Работает работает :yahoo: Спасибо вам огромное, ми...   6.10.2021, 20:30
фонарик   Интересно, а есть ли возможность при отслеживании ...   6.10.2021, 21:38
DarkMaster   Насколько мне известно только через глобальные хо...   7.10.2021, 8:13
sutra   Фонарик, даю реально работающий пример работы пров...   7.10.2021, 9:59
Gendalfgreen   Выше написан ООчень интересный код . но почему то ...   22.6.2022, 18:02
DarkMaster   Возможно проблемы с областью. Попробуйте искать ме...   23.6.2022, 22:31


Ответить в эту темуОткрыть новую тему
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

- Текстовая версия | Версия для КПК Сейчас: 9.7.2025, 20:55
Designed by Nickostyle