TCppWebBrowser在瀏覽網站時的問題 |
答題得分者是:RaynorPao
|
ericlwl
一般會員 發表:3 回覆:5 積分:1 註冊:2003-10-26 發送簡訊給我 |
|
RaynorPao
版主 發表:139 回覆:3622 積分:7025 註冊:2002-08-12 發送簡訊給我 |
引言: 我利用TCppWebBrowser做了一個簡單的瀏覽器,但在瀏覽網頁時遇到以下問題: 在以下的兩種情形"Enter"鍵好像失效了(用IE都可以動作) 1.在搜尋網站輸入完keyword之後按Enter無法自動執行搜尋 2.在Webmail中輸入信件內容時,按Enter無法跳行 不知是哪裡出了差錯ericlwl 你好: 這是 TCppWebBrowser 元件已知的問題,只要加入以下的程式碼,應該就可以修 正這個問題了 < class="code"> // Unit1.h class TForm1 : public TForm { __published: // IDE-managed Components // 略... private: // User declarations void __fastcall IEMessageHandler(tagMSG &Msg, bool &Handled); public: // User declarations __fastcall TForm1(TComponent* Owner); }; // Unit1.cpp IOleInPlaceActiveObject *OleInPlaceActiveObject=NULL; __fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner) { Application->IEMessageHandler; } void __fastcall TForm1::IEMessageHandler(tagMSG &Msg, bool &Handled) { if(Msg.message==WM_RBUTTONDOWN || Msg.message==WM_RBUTTONDBLCLK) { Handled=true; } else if(CppWebBrowser1 && (Msg.message==WM_KEYDOWN || Msg.message==WM_KEYUP) && (Msg.wParam==VK_RETURN || Msg.wParam==VK_EXECUTE)) { Handled=IsDialogMessage(CppWebBrowser1->Handle, &Msg); if(Handled) { if(!OleInPlaceActiveObject) { CppWebBrowser1->Application->QueryInterface(IID_IOleInPlaceActiveObject, (void**)&OleInPlaceActiveObject); } if(OleInPlaceActiveObject) { OleInPlaceActiveObject->TranslateAccelerator(&Msg); } } } else { Handled=false; } } -- Enjoy Researching & Developing --
------
-- 若您已經得到滿意的答覆,請適時結案!! -- -- 欲知前世因,今生受者是;欲知來世果,今生做者是 -- -- 一切有為法,如夢幻泡影,如露亦如電,應作如是觀 -- |
ericlwl
一般會員 發表:3 回覆:5 積分:1 註冊:2003-10-26 發送簡訊給我 |
|
Blueberrug
一般會員 發表:14 回覆:50 積分:17 註冊:2005-05-22 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |