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

 
Ответить в эту темуОткрыть новую тему
> Проблема с sendex + вопрос по workwindow handle, Не работает sendex.
undefined
сообщение 6.4.2020, 10:54
Сообщение #1


**

Neophyte
Сообщений: 14
Регистрация: 11.1.2008
Группа: Пользователи
Наличность: 0
Пользователь №: 10.449
Возраст: 30



Доброе %время суток%

Долгое время использовал пилот в линейке. Сейчас возникла задача, и решил воспользоваться пилотом. Но что-то не так.
Не работает Sendex
Задача: передать в программу пару нажатий клавиш, скопировать содержимое и перенести в эксель. По циклу, то есть просто нужно скопировать таблицу из программы, вывод в принт не устраивает и другие методы не нашел.
Для пробы сделал похожее в блокнот:

--lua
workwindow(856108 )
send ("^a")
send ("^c")
send ("^v")
send ("don't work!")

вывод:
^a^c^vdon't work!

Но как только меняю send на sendex - не происходит просто ничего.
Подскажете что-нибудь?
В документации стоит, что передача Ctrl, Shift и Alt только с sendex.
А что делать, когда эта функция не работает?

И вопрос 2: В Уопилоте можно выбрать приложение, когда вызывают блокнот - показывает другой workwindow handle, который не работает. Работает только тот, который нахожу через Ctrl+A над Блокнотом. Баг?
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
cirus
сообщение 6.4.2020, 11:31
Сообщение #2


**********

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



Цитата
Но как только меняю send на sendex - не происходит просто ничего.

Нужно курсор поставить туда куда будет текст вставляться.
Код
--lua
-- привязку можно не делать
kleft (300, 200, 'abs')  -- клик в абсолютные координаты 300 200 (указать нужные)
wait (500)    -- пауза 0.5 сек
sendex ("^v")  -- нажать Ctrl+V, т. е. вставить текст

Цитата
И вопрос 2: В Уопилоте можно выбрать приложение, когда вызывают блокнот - показывает другой workwindow handle, который не работает. Работает только тот, который нахожу через Ctrl+A над Блокнотом. Баг?

Нет, не баг. Пилот показывает хендл главного окна, а редактор в блокноте это дочернее окно. Нажмите Ctrl+A над заголовком блокнота и редактором, это будут разные окна.
Цитата
скопировать содержимое

Сначала нужно активировать нужное окно, а уже потом выделять и копировать текст.

Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
undefined
сообщение 6.4.2020, 12:21
Сообщение #3


**

Neophyte
Сообщений: 14
Регистрация: 11.1.2008
Группа: Пользователи
Наличность: 0
Пользователь №: 10.449
Возраст: 30



Спасибо!
Так получилось.
Но неясно, зачем тогда нужно workwindow, если окно всё равно не активное.
Если альттабнутся на блокнот, курсор на той же позиции, в начале строки...
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения

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

 

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