civilian님의 도움에 감사드립니다.
사용하는 한글프로그램은 한글2005버전을 사용중이며 델파이는 델파이7버전을 사용중입니다.
바쁘신 가운데에도 관심가지고 도와 주셔서 감사합니다.
civilian 님이 쓰신 글 :
: 사용하는 HWP 버전, 델파이 버전 등을 알려주세요.
:
: 정승균 님이 쓰신 글 :
: : civilian님 감사합니다.
: :
: : 그런데 올려주신 자료를 제대로 활용할 수 있는 수준이 아니어서 소중한 자료를 쳐다보고만 있습니다. 올려주신 패키지 파일이나 dpl파일등을 어떻게 올려서 사용하는지 사용법을 같이 알려주시면 소중하게 사용하겠습니다.
: :
: : 바쁘신데 너무 초보라 요구사항이 많습니다.
: :
: : 꾸벅
: :
: : civilian 님이 쓰신 글 :
: : : 예전에 제가 만들어서쓰던 것을 올립니다.
: : :
: : : Import한 HWpControl의 WndProc를 오버라이딩한것입니다.
: : :
: : : 정승균 님이 쓰신 글 :
: : : : 안녕하십니까!
: : : :
: : : : 델파이 초보입니다. 초등학교 교사인데요. 학교에서 사용할 간단한 프로그램을 짜고 있는데 Hwpctrl을 델파이7에서 임포트시켜 사용하려는데 문제가 있어 문의드립니다.
: : : :
: : : : 일단 아래와 같이 서브클래싱하였습니다. 이것도 제가 한 것이 아니고 다른 분의 소스입니다.
: : : :
: : : : procedure TForm1.FormCreate(Sender: TObject);
: : : : begin
: : : : HNCWndProc := HwpCtrl1.WindowProc; // 원래의 WindProc 저장
: : : : HwpCtrl1.WindowProc := NewHNCWndProc; // 새로운 WndProc로 대치
: : : : end;
: : : :
: : : : procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
: : : : begin
: : : : HwpCtrl1.WindowProc := HNCWndProc; // 원래대로 복구
: : : : end;
: : : :
: : : : procedure TForm1.NewHNCWndProc(var message : TMessage);
: : : : var
: : : : Action, Param : Variant;
: : : : begin
: : : : Action := HWPCtrl1.CreateAction('InsertText'); // 액션 생성
: : : : Param := Action.CreateSet; // 파라메터 생성
: : : : HNCWndProc(message); // 원래의 WndProc 실행
: : : : Case message.Msg of
: : : : WM_CHAR : begin
: : : : Param.SetItem('Text', Char(message.WParam)); // 영문찍기
: : : : Action.Execute(Param);
: : : : end;
: : : : WM_IME_COMPOSITION : // 한글일때
: : : : begin
: : : : if message.LParam <> 2048 then begin // 한글이 완성되었을 때의 처리
: : : : ; // 여기서 완성된 글자 처리
: : : : end
: : : : else begin // 입력중인 미완성 한글찍기
: : : : Param.SetItem('Text', Char(Hi(message.WParam)) + Char(Lo(message.WParam)));
: : : : Action.Execute(Param);
: : : : end;
: : : : end;
: : : : end; // case
: : : : end;
: : : :
: : : : 문제는 한글변환키를 눌러도 작동하지 않는다는 것입니다. 도움 부탁드립니다.
|