자유롭게 질의 및 응답을 할 수 있는 게시판입니다. 개발자 여러분의 답변이 큰 도움이 됩니다.
- 제품설치/등록 오류 문의: 설치/등록 Q&A 이용 (제품 구매 고객 한정)
Delphi 델파이 컨트롤(edit, memo)에서 한영전환
2012.05.30 02:35
안녕하세요.
델파이 7에서는 한영전환이 아래 코드로 잘 작동했는 델파이 2010에서는 작동하지 않습니다. 어떻게 전환하는지 궁금합니다.
type
TimeInputmode = ( imHangul, imEnglish);
procedure SetImeInputMode(const AHandle : THandle; const Value : TimeInputMode);
var
hContext : HIMC;
dwSentence : DWORD;
dwConversion : DWORD;
begin
hContext := ImmGetContext(AHandle);
try
ImmGetConversionStatus(hContext, dwConversion,dwSentence);
if value = imHangul then
ImmSetconversionStatus(hContext, IME_CMODE_HANGUL,dwSentence)
else
ImmSetConversionStatus(hContext, IME_CMODE_ALPHANUMERIC,dwSentence);
finally
ImmReleaseContext(AHandle, hContext);
end;
end;
답변 부탁드립니다.
댓글 4
-
아래 코드로 호출해봤습니다, 잘됩니다.유닛의 위쪽에 uses 에 Imm 유닛을 추가 해주시지 않은것은 아닌가요?
SetImeInputMode(Edit1.Handle, imHangul);
-
superman
2012.05.30 03:35
델파이 2010, 윈도우 7에서 사용하고 있습니다.
운영체제가 xp일 때는 잘 됐으나 윈도우7에서는 작동하지 않습니다.
운영체제와 관련이 있나요?
-
제가 테스트한 환경이 윈도우7입니다. 저는 잘동작하는걸 확인 했습니다.
적어주신 내용은 win api를 이용하는 방법이라 Windows에서는 기본적으로 잘되어야 정상입니다만..
혹시 권한문제때문일 수도 있으니 관리자 권한으로 실행해보시기 바랍니다. ^^
-
준이킴
2012.05.30 20:22
Win7 과의 호환성 때문이라고 본 것 같습니다.
Edit 의 프로퍼티 중 imeName 칸을 지워주시거나..
소스에서 TEdit 를 찾아서 모두 ImeName에 공백을 주시면 잘 동작될 겁니다.
번호 제목 글쓴이 날짜 조회 수
공지
[프로그래밍 강의] 2021.6~2021.12
관리자 2015.01.22 39903
공지
유용한 관련 사이트
관리자2 2014.03.20 79429
10
REST Application에서 앞에 '0' 이 사라져요...
[4] 딸기 2012.02.28 20363
9
Indy ftp 한글깨짐 질문 입니다
[8] sdj 2012.04.04 21165
8
ios 자신의 전화번호 확인은 불가능한건가요?
[3] 델마당쇠 2020.08.25 21327
7
project 그룹 안의 bpl 간의 변수 공유에 대해 질문드립니다.
[2] 국카 2020.08.13 28168
6
모니터 2화면에서 프로그램 열리는 위치 지정가능하다면 방법은?
양현숙 2012.08.16 32913
5
제다이(Jedi) 컴포넌트 설치 방법을 알려주세요
[1] 관리자 2012.04.05 43560
4
FireDac:다른hstmt의결과에 연결이 사용중입니다 라는 오류에 대해
[4]
jcijang 2016.09.14 58802
3
아이폰 본인 전화번호 확인방법??
[1] kerry 2018.01.20 79258
2
구버전 설치시 시리얼번호 문의
[1] DevCK 2020.06.02 95492
1
Delphi XE8 Loadlibrary를 이용한 VC++ dll 사용에 대한 문의드립니다.
[1]
mir 2015.12.24 224284
Delphi 델파이 컨트롤(edit, memo)에서 한영전환
2012.05.30 02:35
안녕하세요.
델파이 7에서는 한영전환이 아래 코드로 잘 작동했는 델파이 2010에서는 작동하지 않습니다. 어떻게 전환하는지 궁금합니다.
type
TimeInputmode = ( imHangul, imEnglish);
procedure SetImeInputMode(const AHandle : THandle; const Value : TimeInputMode);
var
hContext : HIMC;
dwSentence : DWORD;
dwConversion : DWORD;
begin
hContext := ImmGetContext(AHandle);
try
ImmGetConversionStatus(hContext, dwConversion,dwSentence);
if value = imHangul then
ImmSetconversionStatus(hContext, IME_CMODE_HANGUL,dwSentence)
else
ImmSetConversionStatus(hContext, IME_CMODE_ALPHANUMERIC,dwSentence);
finally
ImmReleaseContext(AHandle, hContext);
end;
end;
답변 부탁드립니다.
댓글 4
-
아래 코드로 호출해봤습니다, 잘됩니다.유닛의 위쪽에 uses 에 Imm 유닛을 추가 해주시지 않은것은 아닌가요?SetImeInputMode(Edit1.Handle, imHangul);
-
superman
2012.05.30 03:35
델파이 2010, 윈도우 7에서 사용하고 있습니다.
운영체제가 xp일 때는 잘 됐으나 윈도우7에서는 작동하지 않습니다.
운영체제와 관련이 있나요?
-
제가 테스트한 환경이 윈도우7입니다. 저는 잘동작하는걸 확인 했습니다.
적어주신 내용은 win api를 이용하는 방법이라 Windows에서는 기본적으로 잘되어야 정상입니다만..
혹시 권한문제때문일 수도 있으니 관리자 권한으로 실행해보시기 바랍니다. ^^
-
준이킴
2012.05.30 20:22
Win7 과의 호환성 때문이라고 본 것 같습니다.
Edit 의 프로퍼티 중 imeName 칸을 지워주시거나..
소스에서 TEdit 를 찾아서 모두 ImeName에 공백을 주시면 잘 동작될 겁니다.
번호 | 제목 | 글쓴이 | 날짜 | 조회 수 |
---|---|---|---|---|
공지 | [프로그래밍 강의] 2021.6~2021.12 | 관리자 | 2015.01.22 | 39903 |
공지 | 유용한 관련 사이트 | 관리자2 | 2014.03.20 | 79429 |
10 | REST Application에서 앞에 '0' 이 사라져요... [4] | 딸기 | 2012.02.28 | 20363 |
9 | Indy ftp 한글깨짐 질문 입니다 [8] | sdj | 2012.04.04 | 21165 |
8 | ios 자신의 전화번호 확인은 불가능한건가요? [3] | 델마당쇠 | 2020.08.25 | 21327 |
7 | project 그룹 안의 bpl 간의 변수 공유에 대해 질문드립니다. [2] | 국카 | 2020.08.13 | 28168 |
6 | 모니터 2화면에서 프로그램 열리는 위치 지정가능하다면 방법은? | 양현숙 | 2012.08.16 | 32913 |
5 | 제다이(Jedi) 컴포넌트 설치 방법을 알려주세요 [1] | 관리자 | 2012.04.05 | 43560 |
4 |
FireDac:다른hstmt의결과에 연결이 사용중입니다 라는 오류에 대해
[4] ![]() | jcijang | 2016.09.14 | 58802 |
3 | 아이폰 본인 전화번호 확인방법?? [1] | kerry | 2018.01.20 | 79258 |
2 | 구버전 설치시 시리얼번호 문의 [1] | DevCK | 2020.06.02 | 95492 |
1 |
Delphi XE8 Loadlibrary를 이용한 VC++ dll 사용에 대한 문의드립니다.
[1] ![]() | mir | 2015.12.24 | 224284 |