Множество вариантов результатов нажатий клавиш с нампадовскими цифрами самих по себе, а тем более в сочетаниях с модификаторами, запомнить сложно. А вот запутаться в них легко. Поскольку они зависят от нескольких моментов:
– горит или погашен индикатор NumLock;
– применён ли модификтор Alt (независимо от NumLock);
– применены ли модификторы AltShift (при горящем NumLock);
– применён ли модификтор Shift (сам по себе и с другими модификаторами);
– применены ли модификторы Ctrl или CtrlAlt;
– применена ли клавиша с цифрой 5;
– применена ли системная комбинация "из трёх пальцев" CtrlAltNumDel.
Подробнее об этом см. в теме "Об опознавании клавиш-цифр нампада командой mf.waitkey(0,1)".
Для некоторого упрощения работы с ними предлагается применить следующие макросы.
Клавиши-цифры нампада нажатые — независимо от NumLock выводят в комстроку соответствующие цифры (как одиночные нажатия при горящем NumLock).
Нажатые — независимо от NumLock производят навигационные действия (как одиночные нажатия при погашенном NumLock).
Макросы, упрощающие работу с клавишами-цифрами NumPad`а.
Макросы, упрощающие работу с клавишами-цифрами NumPad`а.
- Attachments
-
- дваМакроса.7z
- (1.03 KiB) Downloaded 67 times
Last edited by sToLp on Thu 05 Oct, 2017 18:45, edited 1 time in total.
- John Doe
- Бюрократ
- Posts: 13860
- Joined: Wed 27 Apr, 2005 20:42
- Has thanked: 74 times
- Been thanked: 428 times
- Contact:
Макросы, упрощающие работу с клавишами-цифрами NumPad`а.
Ликбез по Lua.
1.
2. Есть такая конструкция:
3. Но лучше решать подобные задачи таблицей.
1.
exit()
лишнее.2. Есть такая конструкция:
Code: Select all
if cakeys=="CtrlAltNum1" then
Keys("End")
elseif cakeys=="CtrlAltNum2" then
Keys("Down")
elseif cakeys=="CtrlAltNum3" then
Keys("PgDn")
--...
else
--...
end
Code: Select all
local num = {
CtrlAltNum1 = "End",
CtrlAltNum2 = "Down",
CtrlAltNum3 = "PgDn",
--...
}
--..
Keys(num[cakeys])
Макросы, упрощающие работу с клавишами-цифрами NumPad`а.
Большое спасибо за полезные наставления! Макросы поправлю.
И ещё бы надо сделать макрос для замены нативной команды Ctrl-Numpad5 — "Восстановить ширину панелей по умолчанию", перехватываемой одним из сабжевых макросов. Пока что ни как не могу заставить нормально работать макрос с ключами CtrlShiftNum5 и CtrlShiftClear. Продолжаю с ними упражняться.
Макросы, упрощающие работу с клавишами-цифрами NumPad`а.
Поупражнявшись с вариантами макросов, упрощающих работу с нампадовскими цифрами, пришёл к выводу о целесообразности несколько иного подхода. Поэтому сделал, опробовал и закрепил в своей коллекции три макроса, реализующие следующее.
Первый макрос обеспечивает по нажатию на вывод цифр, независимо от состояния NumLock`а.
Второй — по нажатию шорткатов производит навигационные действия (соответствующие клавишам End, Down, PgDn, Left, CtrlNum5/CtrlClear, Right, Home, Up, PgUp, Ins).
Третий макрос , запускающего нативную команду просмотра файла или размера папки, находящихся под курсором.
Первый макрос обеспечивает по нажатию на вывод цифр, независимо от состояния NumLock`а.
Второй — по нажатию шорткатов производит навигационные действия (соответствующие клавишам End, Down, PgDn, Left, CtrlNum5/CtrlClear, Right, Home, Up, PgUp, Ins).
Третий макрос , запускающего нативную команду просмотра файла или размера папки, находящихся под курсором.
- Attachments
-
- [.{.num#_выводЦифрИнавигацияКлавишамиНампадаНезависимоОтNumLock(sToLp)com.lua
- Три макроса.
- (2.44 KiB) Downloaded 182 times