Как получить/установить раскладку клавиатуры из 1С?

1. sevenlis 69 23.10.06 12:01 Сейчас в теме
Как получить/установить раскладку клавиатуры из 1С? По-моему стандартными средствами мягко говоря проблематично... Может кто поделится нужной внешней библиотечкой? ;-) Или подскажет вариант решения этой проблемы? Заранее спасибо всем.
+
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. support 4485 23.10.06 12:38 Сейчас в теме
3. ResX 25.10.06 20:16 Сейчас в теме
а сам не можешь написать? )
+
4. O-Planet 6432 26.10.06 02:11 Сейчас в теме
На проклубе в свое время я нашел это для своих целей.

Суть:

1. Пользуешься способностью таблицы значений позиционироваться по нажатии клавиши на строку, где нажатый символ находится
2. Пользуешься возможностью строкового поля работать в цикле при изменении чего-то на форме, если эти изменения сделала функция, прописанная в действиях ентого поля.

;)
+
5. sevenlis 69 27.10.06 10:52 Сейчас в теме
support Написал:
-------------------------------------------------------
> formex может
Хорошая и полезная весчь. Вы наверное об фиче "эмулировать клавиатуру"? Так смысл весь в том, чтобы на программном уровне при открытии формы документа установить раскладку винды в положение EN, если таковая имеется. Может выполнитькомандусистемы()? только какую?

+
6. vasilykushnir 63 27.10.06 13:20 Сейчас в теме
А что разве в ПриОткрытии() "эмулировать клавиатуру" с третьим параметром (Раскладка) не срабатывает?
+
7. sevenlis 69 27.10.06 13:43 Сейчас в теме
Не. :-((
Сервис.ЭмулироватьКлавиатуру("",,1);
{Документ.МойДок.Форма.Модуль(715)}: Слишком много параметров передано при вызове функции/процедуры объекта
+
8. vasilykushnir 63 27.10.06 13:50 Сейчас в теме
А подайте-ка автора в студию. АЛьФ отвечай за базар...
Че там неверно? Может вместо ("",,1) надо (,,1)? (лишние кавычки)
+
9. sevenlis 69 27.10.06 14:04 Сейчас в теме
VasilyKushnir Написал:
-------------------------------------------------------
> А подайте-ка автора в студию. АЛьФ отвечай за
> базар...
> Че там неверно? Может вместо ("",,1) надо (,,1)?
> (лишние кавычки)
>

Не. Без кавычек то же самое.
Сервис.ЭмулироватьКлавиатуру(,,1);
{Документ.Док.Форма.Модуль(715)}: Слишком много параметров передано при вызове функции/процедуры объекта
Работает только Сервис.ЭмулироватьКлавиатуру();
и Сервис.ЭмулироватьКлавиатуру(1); тока раскладка остается как перед открытием дока. (индикатор не меняется и ввод происходит по-русски)

+
10. vasilykushnir 63 27.10.06 15:03 Сейчас в теме
Наверное черкни в личку АЛьФу или в комменты к разработке. А получишь ответ - доведи до ведома коллектива. Интересно решаемо или нет.
+
11. maljaev 789 02.11.06 10:43 Сейчас в теме
Если уж просто инвертировать раскладку, то и ВК не надо

WSH=СоздатьОбъект("WScript.Shell");
WSH.SendKeys("^+");

Вопрос в том, как узнать, какая раскладка текущая, чтобы зря не переключать. Где-то я такую ВК уже видел, но не 1С++/FormEx.
+
12. maljaev 789 02.11.06 11:00 Сейчас в теме
Ну точно, блин, вспомнил где видел. ВК Miracle.dll, весьма известная и старинная. Кучер ее выстругал.

Синтаксис:
RUS()
LAT()
Назначение:
Включить соответствующую раскладку клавиатуры
+
13. vasilykushnir 63 02.11.06 11:07 Сейчас в теме
Так давайте попросим Аbadonna выложить эту разработку. Правда он редко бывает на форуме - можно и личку нацарапать.
+
14. maljaev 789 02.11.06 11:32 Сейчас в теме
15. vasilykushnir 63 02.11.06 11:34 Сейчас в теме
На Проклабе ограничени на скачивания.
+
16. vasilykushnir 63 02.11.06 11:39 Сейчас в теме
Все нормально. Поначалу выдавала ошибку скачивания - повторно прошло.
+
17. sevenlis 69 04.11.06 16:37 Сейчас в теме
Всем привет!
Вот что сказал АЛьФ:
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
Для смены раскладки клавиатуры в последней версии (в тестовой сборке) есть
метод Сервис::РаскладкаКлавиатуры().

Пример использования:

Сервис = СоздатьОбъект("Сервис");
Сообщить("Текущая раскладка: "+Сервис.РаскладкаКлавиатуры());
Сервис.РаскладкаКлавиатуры("English (United States)");
Сообщить("Текущая раскладка: "+Сервис.РаскладкаКлавиатуры());
Сервис.РаскладкаКлавиатуры("Russian");
Сообщить("Текущая раскладка: "+Сервис.РаскладкаКлавиатуры("English (United
States)"));
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
Всем спасибо!
ironn; +1
Внимание! Тема сдана в архив

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот