| View previous topic :: View next topic |
| Author |
Message |
se7h
Joined: 28 Sep 2009 Posts: 764 Location: Minsk, Belarus
|
Posted: Mon Sep 05, 2011 2:51 pm Post subject: |
|
|
Andrey_A_A
обратите внимание на программу из этого сообщения, может добавите её к себе в сборку |
|
| Back to top |
|
 |
Andrey_A_A
Joined: 03 Jun 2010 Posts: 483 Location: Сочи, Хоста
|
Posted: Mon Sep 05, 2011 3:14 pm Post subject: |
|
|
| SpecChar... Надо подумать... Хотя для спец симолов буквально вчера сделал контекстное меню, а для других мест работает СLСL и она более структурирована |
|
| Back to top |
|
 |
se7h
Joined: 28 Sep 2009 Posts: 764 Location: Minsk, Belarus
|
Posted: Mon Sep 05, 2011 3:44 pm Post subject: |
|
|
Andrey_A_A
набор символов SpecChar (размер всего-лишь 20 кб) настраивается через ini-файл, структурируйте как хотите |
|
| Back to top |
|
 |
ermakoov
Joined: 17 Aug 2011 Posts: 47
|
Posted: Mon Sep 05, 2011 5:24 pm Post subject: |
|
|
[quote="Andrey_A_A"][quote]
ЦИТАТА. Я твою хотелку раскусил, её можно реализовать скриптом
1. Сохраняется обычный Hotkeys.ini в Hotkeys_Defolt.ini
2. Настраивается второй с где ! - это 1, @ - 2....
3. скрптом переключаются эти два файла
В идеале. т.е. печатаешь 12345..., нажал на скрипт и уже !@#...
Но за этим целая проблема, потому что в редакторе 3-5 плагинов настраивают свои горячие клавиши через Hotkey... и каждый раз это действие может сбить другие настройки - поэтому такой скрипт потенциально опасен и очень-очень индивидуален, а я за безопасность (не навреди) КОНЕЦ ЦИТАТЫ
Андре, я кажется нашел более красивый выход - ставить Шифт на залипание. Есть такая фича в Винде в Спецвозможностях, переключаться в неё можно каким-то сочетанием.
Видишь, я ешё цитаты не научился вставлять, приходится редактиоровать :) |
|
| Back to top |
|
 |
ermakoov
Joined: 17 Aug 2011 Posts: 47
|
Posted: Mon Sep 05, 2011 7:21 pm Post subject: |
|
|
Instructor
Andrey_A_A
А назначение кавычек в хоткейс некорректно у меня работало, потому что я неграмотно писал. И никто не догадался, мне дураку, подсказать, что надо писать не Insert("""), а Insert("\"") |
|
| Back to top |
|
 |
FeyFre
Joined: 07 Aug 2007 Posts: 1892 Location: Vinnitsa, Ukraine
|
Posted: Mon Sep 05, 2011 7:48 pm Post subject: |
|
|
ermakoov, читаем внимательно хелпы, в часномти Hotkeys-Rus.txt
Там мы видим пример записи команд с строчніми аргументами - можно использовать три вида кавычек, в том числе и вперемешку: "" '' `` |
|
| Back to top |
|
 |
Fr0sT
Joined: 24 Jul 2007 Posts: 850
|
Posted: Tue Sep 06, 2011 2:02 pm Post subject: |
|
|
| Вообще имхо такие вещи делаются system-wide посредством изменения раскладки клавы |
|
| Back to top |
|
 |
FeyFre
Joined: 07 Aug 2007 Posts: 1892 Location: Vinnitsa, Ukraine
|
Posted: Tue Sep 06, 2011 2:29 pm Post subject: |
|
|
| Fr0sT, ну дык в личке была данна ссылка на MSKLC |
|
| Back to top |
|
 |
ermakoov
Joined: 17 Aug 2011 Posts: 47
|
Posted: Tue Sep 06, 2011 9:06 pm Post subject: |
|
|
Fr0sT
FeyFre
Эх, знать бы ещё, что значат эти матюки: system-wide, MSKLC :( :) |
|
| Back to top |
|
 |
FeyFre
Joined: 07 Aug 2007 Posts: 1892 Location: Vinnitsa, Ukraine
|
|
| Back to top |
|
 |
ermakoov
Joined: 17 Aug 2011 Posts: 47
|
Posted: Wed Sep 07, 2011 5:26 am Post subject: |
|
|
FeyFre
Виноват - исправлюсь :) Но так вышло не из-за тяжести, а по другой причине. А позволяет ли эта MSKLC переназначать функциональные клавиши - то есть вешать на них свои команды?
И еще вопросик, который меня мучает давно и на него до сих пор не дал мне вменяемый ответ ни один программист. Можно ли в Винде (ХР) чисто системными средствами назначить всем клавишам звук (например, пишущей машинки, как в Акеле)? В OS ведь уже в принципе присутствует фича "звуковых схем". Некоторые программисты говорят, что ничего (только системными средствами, то есть без привлечения сторонних программ) поделать нельзя, так как всё это хозяйство в Винде уже откомпилировано. |
|
| Back to top |
|
 |
FeyFre
Joined: 07 Aug 2007 Posts: 1892 Location: Vinnitsa, Ukraine
|
Posted: Wed Sep 07, 2011 7:53 am Post subject: |
|
|
| Quote: | | А позволяет ли эта MSKLC переназначать функциональные клавиши - то есть вешать на них свои команды? | Нет. Задача "раскладок клавиатуры" преобразовать координаты нажатой клавиши(второй ряд, пятая клавиша слева) в символ ввода. Причем делается это в последнюю очередь - если приложение желает работать с кнопками напрямую, оно не позволяет раскладкам делать своё дело. | Quote: | | Можно ли в Винде (ХР) | Что по-вашему "системные средства"? То что в Винде из коробки? Может и возможно, а может и нет.(В Винде столько функционала и механизмов есть, что я даже не уверен, существует ли человек, который его весь знает). Но в любом случае, тремя щелчками мышки это не настроить. |
|
| Back to top |
|
 |
ermakoov
Joined: 17 Aug 2011 Posts: 47
|
Posted: Wed Sep 07, 2011 8:12 am Post subject: |
|
|
FeyFre
Фей, ты, наверняка, на этом форуме самый отзывчивый отвечальщик :) Спасибо! И тогда, позволь ещё чуть помучить тебя.
Подскажи пожалуйста код скрипта нажатия, например, клавиши Home. |
|
| Back to top |
|
 |
Andrey_A_A
Joined: 03 Jun 2010 Posts: 483 Location: Сочи, Хоста
|
Posted: Wed Sep 07, 2011 8:46 am Post subject: |
|
|
| Quote: | | Подскажи пожалуйста код скрипта нажатия, например, клавиши Home. |
в скриптах .vbs
| Code: | Set WSH = CreateObject("WScript.Shell")
WSH.SendKeys "{HOME}" |
Метод SendKeys
Объект WshShell
Методы
SendKeys
Синтаксис:
SendKeys(<String>)
Назначение:
Посылает одно или несколько нажатий клавиш в активное окно (имитация набора на клавиатуре).
Параметры:
<String> - строка, перечень клавиш в специальном формате.
Описание:
Каждая клавиша задаётся своим символом. Например, чтобы задать нажатие друг за другом клавиш А, Б и В, нужно указать в качестве параметра строку "АБВ".
Некоторые специальные символы следует всегда задавать заключёнными в фигурные скобки. Перечень таких символов:
{+} {^} {%} {~} {(} {)} {[} {]} {{} {}}
Задание неотображаемых символов и специальных клавиш:
<Backspace> - {BACKSPACE} или {BS} или {BKSP}
<Break> - {BREAK}
<Caps Lock> - {CAPSLOCK}
<Delete> - {DELETE} или {DEL}
<End> - {END}
<Enter> - {ENTER} или ~
<Esc> - {ESC}
<Home> - {HOME}
<Insert> - {INSERT} или {INS}
<Num Lock> - {NUMLOCK}
<Page Down> - {PGDN}
<Page Up> - {PGUP}
<Print Screen> - {PRTSC}
<Scroll Lock> - {SCROLLLOCK}
<Tab> - {TAB}
<Up Arrow> - {UP}
<Left Arrow> - {LEFT}
<Down Arrow> - {DOWN}
<Right Arrow> - {RIGHT}
<F1> - {F1}
<F2> - {F2}
и т.д.
<Shift> - +
<Ctrl> - ^
<Alt> - %
Можно использовать скобки. Например, нажатие клавиш <G> и <S> при нажатом <Shift> следует записывать как "+(GS)". Запись "+GS" приведёт к нажатию клавиши <G> при нажатом <Shift>, а затем клавиши <S> уже без <Shift>.
Задание нескольких нажатий: "{LEFT 42}" приведёт к нажатию клавиши <Left Arrow> 42 раза подряд, "{h 10}" приведёт к нажатию клавиши <h> 10 раз подряд.
Метод не может быть использован для посылки нажатий клавиш в приложения MS-DOS.
Пример:
Set WshShell = CreateObject("WScript.Shell")
WshShell.SendKeys "^{ESC}"
|
|
| Back to top |
|
 |
ermakoov
Joined: 17 Aug 2011 Posts: 47
|
Posted: Wed Sep 07, 2011 9:21 am Post subject: |
|
|
Andrey_A_A
Спасибо большое! А как то же самое будет выглядеть на js? |
|
| Back to top |
|
 |
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
Powered by phpBB © 2001, 2005 phpBB Group
|