|
55 / 13 / 2
Регистрация: 26.10.2014
Сообщений: 1,107
|
|
Автонажатие клавиш на Python20.06.2017, 14:11. Показов 14704. Ответов 12
Метки нет (Все метки)
Здравствуйте.
Интересует такая задача на Python: Открывается скрипт. Отслеживает нажатие клавиш во всех окнах. При нажатии F8, автоматически, на самой высокой скорости, нажимается или одна клавиша, или последовательно две клавиши. При нажатии F8 цикл прерывается. Как это можно сделать на Python? Заранее благодарен!
0
|
|
| 20.06.2017, 14:11 | |
|
Ответы с готовыми решениями:
12
Чтение клавиш в Python 3 Автонажатие клавиш Обработка клавиш в python |
|
|
|||||||
| 20.06.2017, 14:58 | |||||||
|
Нужно писать модуль/длл на С/С++ Под виндой можно попробовать использовать RegisterHotKey() это конечно можно сделать на ctypes и win32con, но быстрее/проще наверное будет на С/С++ Вот пример
https://stackoverflow.com/ques... -arguments
1
|
|||||||
|
757 / 306 / 190
Регистрация: 20.05.2016
Сообщений: 593
|
||||||
| 20.06.2017, 19:41 | ||||||
|
А есть уже - keyboard. Будет как-то так
1
|
||||||
| 20.06.2017, 23:54 | |||||||
|
Не по теме:
0
|
|||||||
|
|
||
| 21.06.2017, 00:43 | ||
|
Что касается синтаксиса AHK: да, он basic-подобный и в определенном смысле устарел. Но проще него (как ЯП) для работы с хоткеями на windows пока ничего не придумали (AutoIT более сложен в этом плане). Я на нем не пишу, но использую как очень простой инструмент для автоматизации: в автозагрузке у меня висит один скрипт, а в него постоянно дописывается какой-нибудь блок, который будет выполняться либо по хоткею, либо по условию появления нужного окна - переключение раскладки в cmd, Ctrl+V в cmd (которого нет по дефолту), выключение экрана монитора, очистка нужных папок от мусора и т.д. И для всего этого мне даже не нужно разбираться в особенностях синтаксиса AHK. Так что если инструмент годен для решения определенного класса задач - на синтаксис нас..ть.
0
|
||
|
|
||||
| 21.06.2017, 12:53 | ||||
|
Но как это касается Python? Который тоже кстати собирается в exe. Нормальный синтаксис, MSDN и макс. возможностей.
0
|
||||
|
|
||||||||||
| 21.06.2017, 13:39 | ||||||||||
|
Python хорош для множества задач, но когда для конкретного контекста есть инструмент проще и удобнее - я воспользуюсь им без всяких религиозных терзаний :-) Размер "упаковки" меньше одного mb.
P.S. AHK это очень высокоуровневая обертка над API системы (windows).
0
|
||||||||||
|
|
|||||
| 21.06.2017, 15:04 | |||||
|
Тогда становятся ясно пристрастие к бейсикам и редким .... Кроме того, код изначально плох ибо используется буфер обмена это потенциальное место ошибок. Да и кто с консольными приложениями работает "эмуляцией" ? Как правило работают через pipe.
Добавлено через 1 минуту Добавлено через 10 минут
0
|
|||||
|
|
||||||||||||
| 21.06.2017, 19:08 | ||||||||||||
|
Кликните здесь для просмотра всего текста
Не по теме:
Ну дак это нормально, что хочется писать попроще. Не алголом единым.... Все кто пишет на python (и прочих интепретируемых ЯП-х), а на не asm'е, пришли сюда именно за этим. И не стоит лукавить. А краткость - сами знает чья сестра. Что касается Но речь не о этом, а о том в AHK все это (работа с хоткеями) раз 10 проще и раз в 10 функциональнее (создание неблокирующих хоткеев\заморозка хоткеев\строки автозамены - и все одной строкой). Швейцарский нож. Вот вам задачку попроще:
0
|
||||||||||||
|
|
||||||||
| 21.06.2017, 20:18 | ||||||||
|
И для меня совсем не проблема написать указанный код и оформить все в ф-цию если стоит такая задача. А теперь подумайте что будет если через буфер ... и в момент копирования пользователь сделает Сtrl+C ? Почитайте про пайпы, вопросы отпадут. Хотите не блокируемость породите поток или используйте эвент луп гуи потока. На С++ я тоже могу все запихнуть в одну строчку если вы любитель "извращений" только будет очень длинная она ))
Добавлено через 5 минут Сейчас есть. И собирается одной командой в консоли (по крайней мере с простыми проектами) Добавлено через 4 минуты
0
|
||||||||
|
|
||||||
| 22.06.2017, 17:46 | ||||||
|
Кликните здесь для просмотра всего текста
Не по теме:
Блин, вот не знал, тут оказывается впередсмотрящим на стомильвидящим все уже ясно с будущим - ладно,все, бросаю. Если вы про AHK, то его сборка в exe будет всегда работать на любой windows машине не ниже поддерживаемой версии (на win 98 уже вроде не будет работать). Почему будет? Просто потому, что так сделано автором языка. P.S. Ну вот зря совершенно зацепились за невинное предложение ТС'у взглянуть с сторону просто другого инструмента и превратили тему в холивар "чья мошна круче". Не об этом был мой изначальный пост.
0
|
||||||
|
|
||||||
| 22.06.2017, 19:56 | ||||||
Мм вообще вставка работает только не по Ctrl+V а через меню. Добавлено через 3 минуты А кому нужно изучать подобный язык который навряд ли пригодится потом. Да и что если в программе кроме этой задачи есть еще ф-ционал .... как его лепить этой лабуде? Добавлено через 1 минуту Добавлено через 1 минуту Добавлено через 3 минуты Вы не слыхали про ф-ции, классы, модули? Не? Я могу С/С++ код оформить в виде библиотеки, для меня это не проблема, и "пользовательский" код у меня тоже будет одну строчку. Причем оптимизированный под мой ряд задач. Это вопрос умения писать код.
0
|
||||||
| 22.06.2017, 19:56 | |
|
Помогаю со студенческими работами здесь
13
Блокировка клавиш через python Считывание нажатия клавиш в Python
Автонажатие клавиш Автонажатие клавиш при обнаружении цвета или бот для игры Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2.
Задача: при создании документов установить период списания автоматически. . .
|
Вывод данных в справочнике через динамический список
Maks 01.04.2026
Реализация из решения ниже выполнена на примере нетипового справочника "Спецтехника" разработанного в конфигурации КА2.
Задача: вывести данные из ТЧ нетипового документа. . .
|
Функция заполнения текстового поля в реквизите формы документа
Maks 01.04.2026
Алгоритм из решения ниже реализован на нетиповом документе "ВыдачаОборудованияНаСпецтехнику" разработанного в конфигурации КА2, в дополнении к предыдущему решению.
На форме документа создается. . .
|
К слову об оптимизации
kumehtar 01.04.2026
Вспоминаю начало 2000-х, университет, когда я писал на Delphi. Тогда среди программистов на форумах активно обсуждали аккуратную работу с памятью: нужно было следить за переменными, вовремя. . .
|
|
Идея фильтра интернета (сервер = слой+фильтр).
Hrethgir 31.03.2026
Суть идеи заключается в том, чтобы запустить свой сервер, о чём я если честно мечтал давно и давно приобрёл книгу как это сделать. Но не было причин его запускать. Очумелые учёные напечатали на. . .
|
Модель здравосоХранения 6. ESG-повестка и устойчивое развитие; углублённый анализ кадрового бренда
anaschu 31.03.2026
В прикрепленном документе раздумья о том, как можно поменять модель в будущем
|
10 пpимет, которые всегда сбываются
Maks 31.03.2026
1. Чтобы, наконец, пришла маршрутка, надо закурить. Если сигарета последняя, маршрутка придет еще до второй затяжки даже вопреки расписанию.
2. Нaдоели зима и снег? Не надо переезжать. Достаточно. . .
|
Перемещение выделенных строк ТЧ из одного документа в другой
Maks 31.03.2026
Реализация из решения ниже выполнена на примере нетипового документа "ВыдачаОборудованияНаСпецтехнику" с единственной табличной частью "ОборудованиеИКомплектующие" разработанного в конфигурации КА2. . . .
|