C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 Q&A
C++Builder Programming Q&A
[18192] Re:[질문]CppWebBrowser1에서 복사+엔터키가 이상합니다.
유영인 [Chris] [cuperido] 1528 읽음    2002-05-06 11:33
안녕하세요.

전에 이 글을 보았는데, 제 브라우져에서 이런 저런 상황을 만들어서 해보니, 홍지곤님 말씀처럼 프레임이 있는 페이지에서는 가끔 안되더군요..

그래서 수정할데까지 수정을 해봤지만 해결이 되는지는 잘 모르겠네요.. 어쨌든 저는 제가 알고 있는 홈페이지에서는 수정을 하였는데, 혹시 적용이 안되는 홈페이지가 있다면 알려주시면 정말 감사하겠습니다.

아래는 제 MyMessageHandler 이고요, 저 역시 FAQ 20 번을 참고로 작성을 한 것입니다.

이 문제에 대하여 뉴스그룹에 올렸는데요.. 한 분은, EmbeddedWB 컴포넌트를 쓰라고 하고, 다른 한 분은, 아래 방법으로 끝까지 된다고 말씀하시네요. ㅠ_ㅠ.. 제가 묘사력이 부족해서 일까요.. -_-a



void __fastcall TMain::MyMessageHandler(TMsg &Msg, bool &Handled)
{

if(Msg.message == WM_CLOSE) {
   // 종료시 에러가 나는 부분. OLE가 먼저 해제되기 때문에, 메세지를 가로채어
   // 해당 브라우저를 종료시킨다.
   Task->_tiTick->Enabled = false;

   dynamic_cast<TMain *>(_meSignal->Parent)->OnCloseQuery = NULL;
   Application->OnMessage = NULL;
   OleUninitialize();

   delete dynamic_cast<TMain *>(_meSignal->Parent);

   Task->ACTIVE_BROWSER_NAME = "*재처리*";
   Task->ACTION_TOOL         = MOVE_TOP;
   Task->RefreshTaskBar();

   Application->ProcessMessages();

   Task->_tiTick->Enabled = true;
   return;
}


Handled = IsDialogMessage(_wbBrowser->Handle, &Msg) == true;
if(!Handled || _wbBrowser->Busy) return;


if((Msg.message == WM_KEYDOWN || Msg.message == WM_KEYUP) &&
    (Msg.wParam == VK_RETURN || Msg.wParam == VK_TAB || Msg.wParam == VK_EXECUTE ||
     Msg.wParam == VK_DELETE || Msg.wParam == 67 || Msg.wParam == 86)) {

   if(FOleInPlaceActiveObject != NULL) {
     FOleInPlaceActiveObject->TranslateAccelerator(&Msg);
    } else {
     IDispatch *Dispatch = _wbBrowser->Application;

     if(Dispatch != NULL) {
       IOleInPlaceActiveObject *iOIPAO;
       Dispatch->QueryInterface(IID_IOleInPlaceActiveObject, (LPVOID *)&iOIPAO);

       if(iOIPAO != NULL) {
         FOleInPlaceActiveObject = iOIPAO;
         FOleInPlaceActiveObject->TranslateAccelerator(&Msg);
       }
     }
   }

}

}


홍지곤 님이 쓰신 글 :
:  안녕하세요! Magic.홍지곤 입니다.
:
:  FAQ20번에 있는 내용을 그대로 코딩하여 테스트
:
:  했는데요, 엔터키가 먹는 html파일이 있는 것도
:
:  있고 html파일에서 엔터키가 먹지 않는 것도 있어요..
:
:  그리고 복사도 되는 곳이 있고 안되는 곳이 있는데요...
:
:  왜 그런가요?
:
:  참고로 한쪽 html에서는 그냥 입력하는 것만 입고,
:
:  다른 html에서는 입력하는것에 IFRAME도 같이 있습니다.
:
:  그럼...방법 알고 계신분 알려주세요~~
:
:  감사합니다..즐프하세요!~

+ -

관련 글 리스트
18126 [질문]CppWebBrowser1에서 복사+엔터키가 이상합니다. 홍지곤 865 2002/05/03
18192     Re:[질문]CppWebBrowser1에서 복사+엔터키가 이상합니다. 유영인 [Chris] 1528 2002/05/06
18149     Re: 이미 나왔던 질문이고, 이미 답변이 나와 있습니다. 김상구.패패루 851 2002/05/04
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.