DXライブラリが生成するウィンドウを親ウィンドウとして
子ウィンドウにエディットボックスを設置しようとしたのですが
新しいバージョンのMicrosoft IMEを使用している場合に同じ文字が連続して入力されるなど正しく動作しません
調べてみると新しいMicrosoft IMEによくある不具合のようで
実際にIME設定で「以前のバージョンのMicrosoft IMEを使う」をオンにするかGoogle日本語入力を利用すると正しく入力されました
ただ自分が普段使っていたのは新しいMicrosoft IMEで、一応標準IMEでもあるので出来れば新しいMicrosoft IMEでも正しく動作してほしいなと思っています
これはDXライブラリの範疇ではないのかもしれないので大変申し訳ないのですが何か方法はないでしょうか?
あまりプログラムに詳しくないのでお恥ずかしいですが
簡単にまとめたプログラムを貼り付けてみました
↓
#include "DxLib.h"
#include <Windows.h>
int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow )
{
ChangeWindowMode( TRUE );
SetUseIMEFlag( TRUE );
SetUseTSFFlag( FALSE );
SetGraphMode( 600, 400, 32 );
if( DxLib_Init() == -1 )return -1;
SetDrawScreen( DX_SCREEN_BACK );
HWND hwnd = GetMainWindowHandle();
SetWindowLong( hwnd, GWL_STYLE, GetWindowLong( hwnd, GWL_STYLE ) | WS_CLIPCHILDREN );
CreateWindow( TEXT( "EDIT" ), 0, WS_CHILD | WS_VISIBLE, 100, 100, 400, 200, hwnd, NULL, hInstance, NULL );
while( ProcessMessage() == 0 )ScreenFlip();
DxLib_End();
return 0;
}