procedure TForm1.SetHangeulMode(SetHangeul: Boolean);
var
tMode : HIMC;
begin
tMode := ImmGetContext(handle);
if SetHangeul then // 한글모드로
ImmSetConversionStatus(tMode, IME_CMODE_HANGEUL,
IME_CMODE_HANGEUL)
else // 영문모드로
ImmSetConversionStatus(tMode, IME_CMODE_ALPHANUMERIC,
IME_CMODE_ALPHANUMERIC);
end;
이렇게 해서 한글모드로 바꿨습니다.
그런데 일반폼에서는 모드가 먹는데 창을 하나 뛰우고 그창에서도 위와 똑같은 소스를 만들고 호출했는데도 뛰운 폼에서는 한글모드가 먹지 않습니다. Fomr1Show에서 호출을 했습니다. 이상한것은 버튼을 하나 만들어서 버튼안에서 호출하면 그때서야 한글모드가 된다는 겁니다. 전 폼을 뛰워지자 마자 먹게 하고 싶습니다. 도와주세요
한글을 입력한다면 TEdit 박스로 입력을 받으실거 같은데 모드전환 프로시져를 따로 두시지 말고 해당 컴포넌트 프라퍼티에서 한글모드로 설정하시지요.
그리고 한/영 전환키 사용이 유저한테 불편한 일이 아니라고 생각되네요.^^;