Delphi Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
델파이 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
FreePascal/Lazarus
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
델마당
볼랜드포럼 광고 모집

델파이 Q&A
Delphi Programming Q&A
[6855] [답변] WHDDLF/ 다국어 구현 방법 알려주세요
박테리아 [ ] 795 읽음    1999-12-01 23:50
안녕 하세요?

BacTeria 박종민 입니다.

델파이 어느 버전을 쓰는지 모르겠는데요.

델파이 3부터(맞나???) 입력을 받는 컴포넌트(예:에디트 박스, 메모 에디트,...)의

Property Editor에 ImeMode 라는 프로퍼티가 생겼습니다.

아래 코드를 보세요.

------------------------------------------------------------------------------
procedure TForm1.Button1Click(Sender: TObject);
begin
  Memo1.ImeMode := imSAlpha;
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
  Memo1.ImeMode := imSHanguel;
end;
------------------------------------------------------------------------------

위와 같이 한/영 전환을 코드로도 할 수 있습니다.

아래 코드는 델파이 3 이전 버전 사용자나 ImeMode 속성 쓰기가 싫으신(?) 분들을

위해 덧붙였습니다. 바로 한/영 전환 소스 입니다.

100% 위의 코드와 똑같은 역할을 합니다.

이만... 청주에서 박종민...

PS. "Source\Rtl\Win\Imm.pas"를 Lib 디렉토리로 복사한 후
    uses 구문에 Imm을 추가 해주어야 합니다.

------------------------------------------------------------------------------
procedure CharMode(Hwnd: THandle; Mode: Integer);
var
  hIMC: Integer;
begin
  hIMC := ImmGetContext(Hwnd);

  if hIMC = 0 then Exit;

  ImmSetConversionStatus(hIMC, Mode, IME_SMODE_NONE);
  ImmReleaseContext(Hwnd, hIMC);
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  CharMode(Memo1.Handle, IME_CMODE_ALPHANUMERIC);
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
  CharMode(Memo1.Handle, IME_CMODE_HANGEUL);
end;



+ -

관련 글 리스트
6855 [답변] WHDDLF/ 다국어 구현 방법 알려주세요 박테리아 795 1999/12/01
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.