[MFC/ATL] ActiveX의 에디트박스에 한글입력이 안되는경우
관리자 Date : 05-12-09 12:51 Hit : 124
트랙백 주소 : http://www.tipssoft.com/bulletin/tb.php/old_bbs/176
[질문]

안녕하세요
ATL로 엑티브엑스콘트롤을 만들었읍니다. 그리구 Composite Control를 넣었읍니다. 그리구
픽쳐콘트롤과 에디트박스를 넣었읍니다. 근데 에디트박스에 한글입력이 안됩니다.
영어는 되는데 한글을 입력하면 글자가 이상하게나옵니다. 다이얼로그폰트를 여러가지로 바꿔봐도
마찬가집니다. 왜이럴까요.
조언부탁드립니다.

[답변, 너굴통님이 답변하신 내용]

Edit 컨트롤의 WM_IME_CHAR의 메시지를 재정의하는 Subclassing 방법이 있긴 하지만,
ATL에 능숙하지 않은 사람이 ATL의 Subclassing을 이용하는 것은 쉽지 않습니다.

만약, 단순히 사용자가 입력할 수 있는 Edit 상자를 제공하는 것이 목적이라면 Edit 컨트롤 보다는 Richedit 컨트롤이나 DHTML Edit 컨트롤을 이용해 보는 것이 훨씬 좋을 것 같네요. 이들 컨트롤은
Global IME를 지원하므로 별도의 코드 없이도 한글 입력이 가능합니다.

Microsoft의 기술문서 601181 - "DHTML Edit Control, RichEdit Control은 내부적으로 Global IME
지원" 이라는 문서를 참조하시기 바랍니다.

url - http://support.microsoft.com/default.aspx?scid=kb;ko;KR601181

아시겠지만, 만약 Richedit 컨트롤을 쓸때는 Control의 생성자에 꼭 AfxInitRichEdit() 호출하는 것
잊지 마시고요..

'기본 카테고리' 카테고리의 다른 글

atl param  (0) 2007.07.11
일본 환타CF  (0) 2007.07.10
스타크래프트2 ( starcraft2 ) 월드와이드 인비테이션 실제 시연 동영상  (0) 2007.05.26
oracle instant client  (0) 2007.05.21
스타크래프트 3D 드라마  (0) 2007.05.13

+ Recent posts