Что нового

[Мышь, клавиатура] Использование макроса текущего языка раскладки

MnM

Post-Hardcore
Сообщения
679
Репутация
90
Здравствуйте, у меня происходит проблема с использованием макроса
Код:
ConsoleWrite(@KBLayout)

Данный макрос возвращает неправильные(с точки зрения объяснения в справке описания) данные.
В справке написано:
@KBLayout - Возвращает код текущей раскладки клавиатуры для окна AutoIt3; значение изменяется клавишами Alt+Shift в активном окне. См. приложение для просмотра возможных значений
но при изменении раскладки клавиатуры с помощью Alt+Shift данные остаются прежними. Макрос их изменяет только при изменении языка ввода по умолчанию(в параметрах: "Языки и службы текстового ввода")
 

AZJIO

Меценат
Меценат
Сообщения
2,874
Репутация
1,194
MnM
Переключи раскладку и жми кнопку, напишет то 409, то 419. То что запуск всегда выполняется в раскладке "по умолчанию" это не свидетельствует, что это языковые настройки.
Код:
$hGui = GUICreate('My Program', 250, 260)
$iButton = GUICtrlCreateButton('Start', 10, 10, 120, 22)
$iStatusBar = GUICtrlCreateLabel('StatusBar', 5, 260 - 20, 150, 17)
GUISetState()
While 1
	Switch GUIGetMsg()
		Case $iButton
			GUICtrlSetData($iStatusBar, @KBLayout)
		Case -3
			Exit
	EndSwitch
WEnd
 
Верх