Сервис=СоздатьОбъект("Сервис"); Сервис.РаскладкаКлавиатуры("Russian");
Если (ЗагрузитьВнешнююКомпоненту("NetaTable.dll")=1) Тогда РовнаяТаблица=СоздатьОбъект("AddIn.NTable"); Иначе Предупреждение("Внешняя компонента AddIn.NetaTable НЕ подключена!!!"+РазделительСтрок+"Работа программы невозможна!!!"); СтатусВозврата(0); Возврат КонецЕсли; Процедура ПриНачалеВыбораЗначения(ИдентЭлемента,ФлагОтбора) Если ИдентЭлемента = "Диагноз" Тогда РовнаяТаблица.УстановитьРаскладку(67699721); ИначеЕсли ИдентЭлемента = "ИсточникФинансирования" Тогда РовнаяТаблица.УстановитьРаскладку(68748313); КонецЕсли; КонецПроцедуры
//примеры Sserj Процедура СменитьРаскладку(Реж) //Можно и просто через wrapper.dll //Wrapper = CreateObject("DynamicWrapper"); //Wrapper.Register("USER32.DLL", "ActivateKeyboardLayout", "i=ll", "f=s", "r=l"); //Wrapper.Register("USER32.DLL", "LoadKeyboardLayout", "i=sl", "f=s", "r=l"); //rus = Wrapper.LoadKeyboardLayout("00000419", 0); //eng = Wrapper.LoadKeyboardLayout("00000409", 0); //Если Реж = "RUS" Тогда // Wrapper.ActivateKeyboardLayout(rus, 0); //ИначеЕсли Реж = "EN" Тогда // Wrapper.ActivateKeyboardLayout(eng , 0); //КонецЕсли; Если Не (Константа.ВключатьНамЛоокВТелефонах = Истина) Тогда Возврат; КонецЕсли; wshShell=createObject("wScript.shell"); Если Реж = "RUS" Тогда wshShell.SendKeys("^(8)",0); ИначеЕсли Реж = "EN" Тогда wshShell.SendKeys("^(9)",0); КонецЕсли; КонецПроцедуры // СменитьРаскладку(Реж) //ЕЩЕ //Обновляем хоткеи смены языков, для подмены в полях где нужна английская раскладка текст = СоздатьОбъект("текст"); текст.ДобавитьСтроку("Windows Registry Editor Version 5.00"); текст.ДобавитьСтроку(""); текст.ДобавитьСтроку("[HKEY_CURRENT_USER\Control Panel\Input Method\Hot Keys\00000100]"); текст.ДобавитьСтроку("""Virtual Key""=hex:39,00,00,00"); текст.ДобавитьСтроку("""Key Modifiers""=hex:02,c0,00,00"); текст.ДобавитьСтроку("""Target IME""=hex:09,04,09,04"); текст.ДобавитьСтроку(""); текст.ДобавитьСтроку("[HKEY_CURRENT_USER\Control Panel\Input Method\Hot Keys\00000101]"); текст.ДобавитьСтроку("""Virtual Key""=hex:38,00,00,00"); текст.ДобавитьСтроку("""Key Modifiers""=hex:02,c0,00,00"); текст.ДобавитьСтроку("""Target IME""=hex:19,04,19,04"); ИмяФайла = КаталогИБ() + "LangHotKey.reg"; Попытка текст.Записать(ИмяФайла); wshShell=createObject("wScript.shell"); StrComand = "regedit /S " + СокрЛП(ИмяФайла); wshShell.Run(StrComand,1); //Задерживаемся, иначе скрипт не успевает прочитать файл Для Сч=1 По 50000 Цикл КонецЦикла; ФС.УдалитьФайл(ИмяФайла); Исключение КонецПопытки;