[VB6][TIP] 텍스트 박스의 한/영 전환 (IME)
-
2012년 6월 29일 금요일 오전 10:58[VB6][TIP] 텍스트 박스의 한/영 전환 (IME)
- 편집됨 devlife 2012년 6월 29일 금요일 오전 10:58
모든 응답
-
2012년 6월 29일 금요일 오전 10:58
ImmSetConversionStatus로 한/영 전환 상태를 변경할 수 있습니다.
폼에 텍스트박스(Text1)와 명령버튼 두개(Command1, Command2)를 만드세요.
그리고 명령 버튼에서..Command1를 [한글 모드], Command2를 [영문 모드]로 고칩니다.
각각 아래와 같은 코드를 넣고 실험해보면 한글모드와 영문모드로 전환이 되는 것을 보실 수 있습니다.^^
Private Declare Function ImmGetContext Lib "imm32.dll" (ByVal hwnd As Long) As Long
Private Declare Function ImmSetConversionStatus Lib "imm32.dll" (ByVal hIMC As Long, ByVal dw1 As Long, ByVal dw2 As Long) As Long
Private Const IME_CMODE_NATIVE As Long = &H1
Private Const IME_CMODE_ALPHANUMERIC As Long = &H0
Private Const IME_SMODE_NONE As Long = &H0Private Sub Command1_Click()
Dim hIMC As Long
hIMC = ImmGetContext(Text1.hwnd)
ImmSetConversionStatus hIMC, IME_CMODE_NATIVE, IME_SMODE_NONE
End SubPrivate Sub Command2_Click()
Dim hIMC As Long
hIMC = ImmGetContext(Text1.hwnd)
ImmSetConversionStatus hIMC, IME_CMODE_ALPHANUMERIC, IME_SMODE_NONE
End SubIMC 핸들을 얻기 위해 ImmGetContext()함수를 썼고, 그에 대한 변환상태를 변경하는 예제입니다.^^;
- 답변으로 표시됨 devlife 2012년 6월 29일 금요일 오전 10:58

