Текущий архив: 2003.05.15;
Скачать: CL | DM;
Вниз
Hook - Подмен клавиш Найти похожие ветки
← →
Silver_ © (2003-04-25 15:06) [0]ситуация такова
Есть клава на которой нема русских букв и иногда нужно печатать на русском
1. выход первый купить наклейки :(
2. выход второй написать прогу заменяющая нажатые клавиши
например нажал "а(-lat)"=ф заменить на "ф"
второй выход более изящный плюс к этому добавив настройки можно будет применить к
любому языку
по сути это как будто бы сделать новый язык(новую раскладку клавиатуры)
вопрос как это осуществить. Может кто-нить уже это делал и не жалко поделиться :)
заранее спасибо.
← →
jel © (2003-04-25 16:12) [1]
> 2. выход второй написать прогу заменяющая нажатые клавиши
> например нажал "а(-lat)"=ф заменить на "ф"
Если я правильно понял суть вопроса, то такая прога уже написана и фходит в состав Windows. Это обычный переключатель раскладки клавиатуры. А есть на ней русские буквы или нет - ему все равно.
← →
Dms (2003-04-25 16:17) [2]windows, по-твоему, знает, что у тебя буковки не наклеены ?
← →
Silver_ © (2003-04-25 16:31) [3]
> jel © (25.04.03 16:12)
так вот клавиша с буквой А(en)=Ф(ru) нужно при нажатии А(en) при русской раскладке генерить F(en) в результате тама где я пишу получится как будто нажимаешь на F(en)=А(ru)
хочу написать прогу которая при нажатии А(en)=Ф(ru) генерила F(en)=А(ru)
надеюсь по-понятней разяснил
← →
REA © (2003-04-25 16:47) [4]Не особо. А при нажатии W что должно генерироваться?
В любом случае этого можно без программы добиться наверно, найдя где windows раскладки и языки хранит.
А может все-же наклейки купить? А то гланды болеть будут.
← →
evvcom © (2003-04-25 16:54) [5]То есть тебя устроит, если прога будет из твоего "slovo" делать "слово"? Тогда посмотри http://punto.ru/switcher/ - готовый программный продукт, который умеет делать и это в том числе.
← →
Silver_ © (2003-04-25 16:54) [6]но ведь можно <Enter> в <Tab> превратить
keybd_event(9, 0, 0, 0);
передает натуральный <Tab>
теперь надо Hook навесить правельно ведь не тока в моей проге печатать предполагается тута я-б сделал (скорей всего).
> REA © (25.04.03 16:47)
> Не особо. А при нажатии W что должно генерироваться?
> Silver_ © (25.04.03 15:06)
> ситуация такова
> Есть клава на которой нема русских букв и иногда нужно печатать
> на русском
> 1. выход первый купить наклейки :(
> 2. выход второй написать прогу заменяющая нажатые клавиши
> например нажал "а(-lat)"=ф заменить на "ф"
>
> второй выход более изящный плюс к этому добавив настройки
> можно будет применить к
> любому языку
← →
Dms (2003-04-25 17:05) [7]а почему ты так уверен, что хук поможет ? сообщение ты ж не подменишь ...
← →
NickBat © (2003-04-25 17:10) [8]А если пользователь захочет получить русские буквы: Я, Ы, Щ, Ъ, Ь, Ч, Ц
← →
Silver_ © (2003-04-25 17:14) [9]
> evvcom © (25.04.03 16:54)
> То есть тебя устроит, если прога будет из твоего "slovo"
> делать "слово"?
уже боялся не понимают
смотрел http://punto.ru/switcher/ но тама нада
Конвертация выделенного текста. Выделите текст, нажмите Shift+Break, и при отпускании клавиши Shift, Punto Switcher за Вас скопирует выделение в буфер обмена, переконвертирует текст в другой язык (подразумевается использование только русской и английской раскладок) и вставит обратно! Так как операция выполняется посредством имитации нажатия Ctrl+C, конвертации буфера, а затем - Ctrl+V, то при нескольких нажатиях Shift+Break или при отсутствии выделенного текста PS просто переконвертирует буфер и вставит текст.
а я хочу сразу нажал "s" получаешь "с"; "slovo" а где печатал (MSWord, Excel, ...) уже стоит "слово" (без лишних действий)
← →
Silver_ © (2003-04-25 17:20) [10]да и потом "slovo" превращается в "ыдщмщ" что не есть то что хотел :(
← →
Dms (2003-04-25 17:27) [11]2 Silver_
ответь на мой вопрос
← →
Silver_ © (2003-04-25 17:36) [12]
> Dms (25.04.03 17:27)
от того и спрашиваю с хуками не работал ни разу
представляю примерно так: получили нажатую клавишу
потом типа так
if aKey = "А"
{en}then keybd_event(Ord("A"
{ru}), 0, 0, 0);
← →
Dms (2003-04-25 17:47) [13]насколько я понял, то это при помощи ловушки сделать нельзя, т.к. сообщение можно перехватить, но нельзя сделать, чтобы его не получил тот, кому оно предназначается ... по-моему так ... иначе такая анархия была, что виндам бы каюк пришелся
← →
Silver_ © (2003-04-25 18:22) [14]ну тогда как поймать-подменить-отпустить пущай едет к адрессату
блин может ваще в API мне/меня надо а?
← →
DVM © (2003-04-25 20:06) [15]
> насколько я понял, то это при помощи ловушки сделать нельзя,
> т.к. сообщение можно перехватить, но нельзя сделать, чтобы
> его не получил тот, кому оно предназначается ... по-моему
> так ... иначе такая анархия была, что виндам бы каюк пришелся
Можно!
← →
evvcom © (2003-04-28 10:56) [16]> Silver_ ©
> а я хочу сразу нажал "s" получаешь "с"; "slovo" а где печатал
> (MSWord, Excel, ...) уже стоит "слово" (без лишних действий)
Напиши ребятам - они довольно оперативные и в последнее время в основном занимаются оформительством. Заскучали ужо. Эту идею, думаю, в раз подхватят и сделают. Тем более они в этом вопросе просто мастера!
> да и потом "slovo" превращается в "ыдщмщ" что не есть то
> что хотел :(
Там есть понятия "транслитерация" и "обратная транслитерация" - это делается не автоматом, а по сочетанию каких-то клавиш.
← →
Silver_ © (2003-04-30 14:28) [17]
> Напиши ребятам - они...
ОНИ то сделаютъ а кочу сам :) ведь вопрос не в том чтб иметь прогу которая этим занималась. А самому сделать нечто подобное, может пригодится...
> Dms (25.04.03 17:47)
Знаешь как, поделись (хоть инфой)
← →
evvcom © (2003-04-30 14:37) [18]
> ОНИ то сделаютъ а кочу сам :) ведь вопрос не в том чтб иметь
> прогу которая этим занималась. А самому сделать нечто подобное,
> может пригодится...
Так и пиши, что охота потренироваться, а то "нужна транслитерация" и баста!
← →
NDeu © (2003-04-30 14:48) [19]Нужно познокомится с *.kbd
← →
Silver_ © (2003-04-30 15:38) [20]
> Так и пиши, что охота потренироваться, а то "нужна транслитерация"
> и баста!
НУЖНА (т.е. не тока потренероваться), тока хочу своимим ручками сделать, всяких настроек,обработок (наворотов) добавить (на сайт по Дельфи вроде "вопросил", а не на "качайте хлопци готовые проги" :о), хотя готовые решения посмотреть тоже не лишнее)
Без обид но в вопросе прозвучало охота самому "настряпать" :о)
> 2. выход второй написать прогу заменяющая нажатые клавиши
> например нажал "а(-lat)"=ф заменить на "ф"
> NDeu © (30.04.03 14:48)
> Нужно познокомится с *.kbd
у себя (Win XP) не нашел ничего подобного *.kbd, это что?
← →
evvcom © (2003-04-30 15:51) [21]
> НУЖНА (т.е. не тока потренероваться), тока хочу своимим
> ручками сделать, всяких настроек,обработок (наворотов) добавить
Ничего не имею против этого. Просто у самого возникало много различных идей, но когда напарывался на уже готовое решение, причем неплохо сделанное, сразу пропадала охота изобретать велосипед.
Страницы: 1 вся ветка
Текущий архив: 2003.05.15;
Скачать: CL | DM;
Память: 0.52 MB
Время: 0.015 c