переключение Языков клавы
| Правила | Регистрация | Пользователи | Сообщения за день |  Справка по форуму | Файлообменник |

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > переключение Языков клавы

переключение Языков клавы

Ответ
Поиск в этой теме
Непрочитано 25.05.2005, 10:43 #1
переключение Языков клавы
Gaa2001
 
Israel
Регистрация: 23.05.2005
Сообщений: 8

Можеь быть кто нибудь подскажет, как на лиспе можно переключать язык клавы
Просмотров: 4846
 
Непрочитано 25.05.2005, 11:33
#2
{Smirnoff}

Инженер по системам безопасности
 
Регистрация: 23.11.2003
Рига
Сообщений: 1,099


Как я незнаю. Однако вероятно это возможно. В Download скачай книжку Visual LISP Developer Bible, там есть некоторые примеры управления "виндоусовскими" объектами. В частности Windows Scripting Host, File System Object, Windows Messaging. Короче примеры есть, а вот куда залезть чтобы это осуществить я не имею понятия. См. главу Inerfecing With Other Applications.
{Smirnoff} вне форума  
 
Непрочитано 26.05.2005, 13:35
#3
Jurasic


 
Регистрация: 10.01.2005
Москва
Сообщений: 89
<phrase 1=


Можно. Используй ARX-приложение Мансура Мамкина:
http://www.alx.ncn.ru/page.php?lang=...ct=MtmdLoadDLL
"Модуль для вызова функций пользовательской DLL из LISP-программ." (с) Мансур Мамкин
Пример вызова функции:
Смена layout
Код:
[Выделить все]
(MtmdLoadDll "user32" "LoadKeyboardLayoutA" 1 "STRING" "00000419");;;русский
(MtmdLoadDll "user32" "LoadKeyboardLayoutA" 1 "STRING" "00000409");;;английский
Если хочешь узнать текущую раскладку
Код:
[Выделить все]
(setq layout (MtmdLoadDll "user32" "GetKeyboardLayoutNameA" 1 "STRRESULT" 60))
Jurasic вне форума  
 
Непрочитано 26.05.2005, 18:30
#4
Gaa

сан-техник на пенсии
 
Регистрация: 23.05.2005
Сообщений: 140


Jurasic, Спасибо тебе за помощь.
определил текущую раскладку - "0000040D", вставил
Код:
[Выделить все]
(MtmdLoadDll "user32" "LoadKeyboardLayoutA" 1 "STRING" "0000040D")
в прогу, но ничего не вышло. М.Б. что-то делаю не так?
__________________
Спасибо
Gaa вне форума  
 
Непрочитано 27.05.2005, 16:54
#5
Jurasic


 
Регистрация: 10.01.2005
Москва
Сообщений: 89
<phrase 1=


Ну, я так понимаю - "0000040D" это именно ТЕКУЩАЯ раскладка, поэтому при исполнении:
Код:
[Выделить все]
(MtmdLoadDll "user32" "LoadKeyboardLayoutA" 1 "STRING" "0000040D")
ничего не происходит... Нужно поменять раскладку и посмотреть второй код "00000..." И уже на него менять...
А, если не секрет, "0000040D" это какого языка раскладка?
Jurasic вне форума  
 
Непрочитано 27.05.2005, 22:51
#6
Gaa

сан-техник на пенсии
 
Регистрация: 23.05.2005
Сообщений: 140


"0000040D" - Ивритская раскладка HEBREW (HE).

Перед выполнением проги переключаю на EN, запускаю прогу, она проходит эту функцию, но раскладку не меняет.
Запускал трассировку с остановом. Кстати, и первод 00000419 на 00000409 не получается.
М.Б. что ARX, в которой описана эа функция не подходит к АКАД2006?
__________________
Спасибо
Gaa вне форума  
 
Непрочитано 28.05.2005, 13:59
#7
BigBrother

Design & programming :)
 
Регистрация: 14.02.2004
Новосибирск
Сообщений: 172
<phrase 1= Отправить сообщение для BigBrother с помощью Skype™


Цитата:
Сообщение от Gaa
М.Б. что ARX, в которой описана эа функция не подходит к АКАД2006?
А что пишет при загрузке arx? Дело в том, что там 2 версии под 2000 и 2004...
Под 2006-м работать должна последняя.
BigBrother вне форума  
 
Непрочитано 28.05.2005, 15:24
#8
Arkady

AutoCad Development and Support
 
Регистрация: 21.08.2003
Israel
Сообщений: 183
Отправить сообщение для Arkady с помощью Skype™


Поробуй так,проверял на МАР 3D 2005

Код:
[Выделить все]
(MtmdLoadDll "user32" "LoadKeyboardLayoutA" 2 "STRING" "0000040D" 
"LONG" 1)
Если пишешь на VB могувыслать исходник програмки редакирования иврита (когда-то начал и бросил)
Arkady вне форума  
 
Непрочитано 28.05.2005, 17:23
#9
Gaa

сан-техник на пенсии
 
Регистрация: 23.05.2005
Сообщений: 140


Поставил код Аркадия.

заработало!

Спасибо ВСЕМ !!!

Аркадий, писал (но не дописал ВСЕ задуманное) на лиспе, под себя лет 8 назад, пользуюсь до сейчас, правда переключение клавы доставало, теперь установил 2006 и решил продолжить!

Болванку на лиспе могу выслать, работает только при писанине.
__________________
Спасибо
Gaa вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > переключение Языков клавы