본문 바로가기

컴퓨터/파워빌더

파워빌더 - 한영키변환

사용자들이 데이터윈도우에 자료를 입력할때 특정항목(한글로입력해야하는경우)에서
한영키를 눌러줘야하는 번거로움을 피할수 있도록 자동으로 한영키를 변환해주는 팁입니다.

//Global xternal Functions  함수정의
FUNCTION LONG ImmGetContext( long handle ) LIBRARY "IMM32.DLL"
FUNCTION LONG ImmSetConversionStatus( long hIMC, long fFlag, long l ) LIBRARY "IMM32.DLL"
Function Boolean ImmGetConversionStatus(ulong hImc, ref ulong lpfdwConversion, ref ulong lpfdwSentence) Library "imm32.dll"
FUNCTION LONG ImmReleaseContext( long handle, long hIMC ) LIBRARY "IMM32.DLL"

//데이터윈도우의 itemfocuschanged 이벤트 스크립트
ulong aa, cc
aa = handle(this)
cc = ImmGetContext(aa)

CHOOSE CASE dwo.NAME
 CASE '필드1','필드2'  //한글키로 변환해야하는 필드명...
       ImmSetConversionStatus(cc, 1, 0)  //한글자판변환
 CASE ELSE
     ImmSetConversionStatus(cc, 0, 0)  //영문자판변환
end choose