Q&A

  • 한글모드로 바꾸고 싶을때..?
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에서 호출을 했습니다. 이상한것은 버튼을 하나 만들어서 버튼안에서 호출하면 그때서야 한글모드가 된다는 겁니다. 전 폼을 뛰워지자 마자 먹게 하고 싶습니다. 도와주세요
3  COMMENTS
  • Profile
    물고기나라 2002.11.13 20:20

    한글을 입력한다면 TEdit 박스로 입력을 받으실거 같은데 모드전환 프로시져를 따로 두시지 말고 해당 컴포넌트 프라퍼티에서 한글모드로 설정하시지요.
    그리고 한/영 전환키 사용이 유저한테 불편한 일이 아니라고 생각되네요.^^;
  • Profile
    델사랑 2002.11.13 21:01
    프로퍼티에서 한글모드로 바꾸면 숫자를 입력할때 뛰어쓰기가 되요
    그래서 프로퍼티로 바꾸면 안됩니다
    3개의 에디터가 있는데 하나라도 프로퍼티에서 한글로 바꾸면 안바꾼 에디터에서 숫자를 입력할때 뛰어쓰기가 됩니다
    좋은방법이 없을까요?

  • Profile
    물고기나라 2002.11.13 21:44

    ImeMode 프라퍼티를 스몰한글(imSHanguel)로 지정하면
    문자나 숫자나 안떨어져요