Что нового

InputBox кодировка

Grx-Lin

Новичок
Сообщения
27
Репутация
0
Можно ли как то принудительно запускать программу(скрипт) с английской раскладкой?
Вот этот код меняет раскладку. Можно ли его изменить,что бы перед запуском моего скрипта,раскладка менялась только на английскую.
Код:
#include <GUIConstantsEx.au3>
#include <GUIEdit.au3>
#include <WinAPIEx.au3>

_FixAccelHotKeyLayout()

HotKeySet("^+e", "_Quit")

$hGUI = GUICreate("Fix for hotkey/Accelerators assign problem", 300, 200)
$nEdit = GUICtrlCreateEdit("", 20, 40, 260, 120)

$nDummy = GUICtrlCreateDummy()
Dim $aAccelKeys[1][2] = [["^a", $nDummy]]
GUISetAccelerators($aAccelKeys)

GUISetState(@SW_SHOW, $hGUI)

While 1
    Switch GUIGetMsg()
        Case $GUI_EVENT_CLOSE
            Exit
        Case $nDummy
            _GUICtrlEdit_SetSel($nEdit, 0, -1)
    EndSwitch
WEnd

Func _Quit()
    Exit
EndFunc

Func _FixAccelHotKeyLayout()
    Static $iKbrdLayout, $aKbrdLayouts

    If Execute('@exitMethod') <> '' Then
        Local $iUnLoad = 1

        For $i = 1 To Ubound($aKbrdLayouts) - 1
            If Hex($iKbrdLayout) = Hex('0x' & StringRight($aKbrdLayouts[$i], 4)) Then
                $iUnLoad = 0
                ExitLoop
            EndIf
        Next

        If $iUnLoad Then
            _WinAPI_UnloadKeyboardLayout($iKbrdLayout)
        EndIf

        Return
    EndIf

    $iKbrdLayout = 0x0409
    $aKbrdLayouts = _WinAPI_GetKeyboardLayoutList()
    _WinAPI_LoadKeyboardLayout($iKbrdLayout, $KLF_ACTIVATE)

    OnAutoItExitRegister('_FixAccelHotKeyLayout')
EndFunc
 

CreatoR

Must AutoIt!
Команда форума
Администратор
Сообщения
8,671
Репутация
2,481
Grx-Lin [?]
Можно ли его изменить,что бы перед запуском моего скрипта,раскладка менялась только на английскую.
А зачем менять, он именно это и делает.
 
Автор
G

Grx-Lin

Новичок
Сообщения
27
Репутация
0
Он почему то меняет раскладку только когда я закрываю программу,а не перед открытием.
 

CreatoR

Must AutoIt!
Команда форума
Администратор
Сообщения
8,671
Репутация
2,481
Grx-Lin [?]
Он почему то меняет раскладку только когда я закрываю программу,а не перед открытием.
Меняется раскладка ПРИ открытии программы, и только для процесса скрипта.
 

InnI

AutoIT Гуру
Сообщения
4,912
Репутация
1,429
Grx-Lin
Встроенная консоль - это отдельный процесс. Следовательно, ей тоже нужно менять раскладку
Код:
_WinAPI_SetKeyboardLayout($WWcmd, 0x0409)
 

CreatoR

Must AutoIt!
Команда форума
Администратор
Сообщения
8,671
Репутация
2,481
InnI [?]
Встроенная консоль - это отдельный процесс. Следовательно, ей тоже нужно менять раскладку
А при чём тут консоль?
Вопрос совсем о другом, если это догадки по мотивам другой темы, то автор неверно поставил суть вопроса.
 

InnI

AutoIT Гуру
Сообщения
4,912
Репутация
1,429
CreatoR
догадки по мотивам другой темы
Именно. У него все вопросы связаны со встраиванием консоли в GUI. Думаю, и эта тема не исключение.
 
Верх