4

問題 (動的に言語を切り替える) はActivateKeyboardLayoutで解決されますが、フォーム上にコンポーネントを動的に作成しても (例: TEdit )、問題は残ります。このコンポーネントがフォーカスされると、言語がデフォルトに変わります。コンポーネントを作成した後、もう一度ActivateKeyboardLayoutを使用しようとしましたが、うまくいきませんでした。何か案は ?

4

2 に答える 2

1

最初に「Windows」を使用する必要があり、次にこのメソッドを使用できます: ActivateKeyboardLayout(EnglishLayoutHandle, KLF_ACTIVATE) 必要な言語の「EnglishLayoutHandle」を変更できます

于 2013-04-29T11:13:46.090 に答える
0

あなたの問題はこの質問に似ているかもしれません。

それ以外の場合、このコードはそれを行います:

keybd_event(VK_MENU, 0, 0, 0);
keybd_event(VK_SHIFT, 0, 0, 0);
keybd_event(VK_MENU, 0, KEYEVENTF_KEYUP, 0 );
keybd_event(VK_SHIFT, 0, KEYEVENTF_KEYUP, 0);
于 2012-04-25T14:04:01.033 に答える