Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.12.12;
Скачать: CL | DM;

Вниз

Как переключить раскладку клавиатуры?   Найти похожие ветки 

 
stel   (2002-10-21 07:53) [0]

Как переключить раскладку клавиатуры? Везде пишут, что типа есть такая функция SetActiveKeyboardLayout, да только
чё-то она у меня за Undeclared identifier проходит. А может быть она в каком-то пасе лежит, который я не подключи?


 
Song ©   (2002-10-21 09:16) [1]

LoadKeyboardLayout() с параметром KLF_ACTIVATE


 
Alexec ©   (2002-10-21 13:47) [2]

LoadKeyboardLayout("00000409", KLF_ACTIVATE); // английский
LoadKeyboardLayout("00000419", KLF_ACTIVATE); // русский


 
Novichek ©   (2002-10-21 19:30) [3]

а как перехватить момент переключения и, к примеру, вывести сообщение, что раскладка клавиатуры переключена на английский/русский?


 
Diamond Cat ©   (2002-10-22 00:11) [4]

реагировать на сообщения
WM_INPUTLANGCHANGE и WM_INPUTLANGCHANGEREQUEST


 
Novichek ©   (2002-10-22 12:18) [5]

каким образом? опрашивать по таймеру каждую секунду? а можно как нибудь по другому?


 
Novichek ©   (2002-10-22 12:59) [6]

а можно ли переключить раскладку из своей программы горячими клавишами в любом другом активном в данный момент приложении, и если можно то как?
через LoadKeyboardLayout() с параметром KLF_ACTIVATE не получается.


 
Evgeny ©   (2002-10-22 13:51) [7]

>каким образом? опрашивать по таймеру каждую секунду? а можно как нибудь по другому?
Сказано же опрашивай СООБЩЕНИЯ.

>через LoadKeyboardLayout() с параметром KLF_ACTIVATE не получается.
LoadKeyboardLayout("00000419", KLF_ACTIVATE); // русский
Это работает в полный рост.


 
Novichek ©   (2002-10-22 18:18) [8]

>> Evgeny
ни чего подобного, раскладка переключается только в моем приложении.


 
Novichek ©   (2002-10-23 18:17) [9]

>> Evgeny
ни чего подобного, раскладка переключается только в моем приложении.


 
Novichek ©   (2002-10-26 00:20) [10]

ни чего подобного, раскладка переключается только в моем приложении.


 
Cobalt ©   (2002-10-26 02:45) [11]

Читайте внимательно справку:

Value Meaning
KLF_ACTIVATE If the given layout is not already loaded, the function loads and activates the layout for the current thread, inserting the layout at the head of the keyboard layouts list in front of the previously active layout. If the layout is already loaded and the KLF_REORDER value is not given, the function simply rotates the keyboard layouts list, making the next layout the active layout.


 
Novichek ©   (2002-10-28 14:11) [12]

может я что-то не так делаю но у меня идет переключение только в моем приложении...


 
Song ©   (2002-10-28 14:17) [13]

Послать WM_INPUTLANGCHANGEREQUEST


 
Novichek ©   (2002-10-28 18:11) [14]

>> Song
кому и как? обьясни популярно пожалуйста.


 
Song ©   (2002-10-29 09:13) [15]

SendMessage()


 
Novichek ©   (2002-10-29 14:17) [16]

а какие параметры указывать в wParam, lParam? при указывании "0" не работает.


 
Song ©   (2002-10-29 14:27) [17]

Если Вы такие вопросы задаёте, то Вам или рано заниматься АПИ или надо учить англ. язык, чтобы читать хэлп.


 
Novichek ©   (2002-10-29 14:32) [18]

подскажите пожалуйста!!!


 
Song ©   (2002-10-29 14:39) [19]

The WM_INPUTLANGCHANGEREQUEST message is posted to the application"s top-level window when the user chooses an input language, either with an input language change hotkey or from the system languages menu. An application can accept the change by passing the message to the DefWindowProc function or reject the change (and prevent it from taking place) by returning immediately.

WM_INPUTLANGCHANGEREQUEST
fSysCharSet = (BOOL) wParam
hkl = (HKL) lParam;


Parameters

wParam

The lowest bit of this parameter is set if the handle of the keyboard layout can be used with the system character set. The other bits are reserved. For example, in the Russian-language version of Windows 95, this parameter has the low bit set for keyboard layout handles for English (US) and Russian, but cleared for other handles.

hkl

Value of lParam. Identifies the keyboard layout to switch to.


 
Novichek ©   (2002-10-29 14:54) [20]

а у меня такого в хелпе нет :(((
а не будет ли слишком сильно нагло если я попрошу разжевать мне что надо указать в fSysCharSet, hkl: что бы переключить на русский/английский? ПОЖАЛУЙСТА!!!


 
Song ©   (2002-10-29 15:19) [21]

Смотрите хэлп по WinSDK.
>а не будет ли слишком сильно нагло..
Будет.
Надо что-то самому сделать???
Смотрите LoadKeyboardLayout() - она hkl возвращает.


 
Cobalt ©   (2002-10-29 16:58) [22]


> Novichek © (29.10.02 14:54)
> а у меня такого в хелпе нет :(((

p.s. если вы, конечно, при установке Дельфи не отключил MS SDK Help


 
Novichek ©   (2002-10-29 18:15) [23]

да ничего я не отключал!
а хелп у меня неполный, там много чего нет. :((



Страницы: 1 вся ветка

Текущий архив: 2002.12.12;
Скачать: CL | DM;

Наверх




Память: 0.51 MB
Время: 0.018 c
1-36195
Versus31
2002-12-04 11:23
2002.12.12
TWebBrowser GoBack & GoForward.


7-36436
Dr.Shark
2002-10-02 13:35
2002.12.12
аналоговые данные и их обработка


1-36192
MAN-IN-RED
2002-12-01 14:37
2002.12.12
?


1-36091
^Sanya
2002-12-02 00:52
2002.12.12
TMemo:


3-36054
Юлия
2002-11-24 16:02
2002.12.12
Использование DBLookUpComboBox