DELPHI TWebbrowser 响应回车键(EWB响应正常,无需额外代码)


本文整理自网络,侵删。

 
增加一个ApplicationEvents,在Message事件中如下代码(WB看自己的WEBBROWSER 控件命名)

procedure TFrmMain.ApplicationEvents1Message(var Msg: tagMSG;
  var Handled: Boolean);      //专为IE内核 WEBBROWSER 响应回车键


const
  StdKeys = [VK_TAB, VK_RETURN, VK_DELETE, VK_BACK]; { standard   keys }
  ExtKeys = [VK_LEFT, VK_RIGHT]; { extended   keys }
  fExtended = $01000000; { extended   key   flag }


begin
Handled   :=   False;
 with   Msg   do
   if   ((Message   >=   WM_KEYFIRST)   and   (Message   <=   WM_KEYLAST))   and
        ((wParam   in   StdKeys)   or   {$IFDEF   VER120}(GetKeyState(VK_CONTROL)   <   0)   or   {$ENDIF}
        (wParam   in   ExtKeys)   and   ((lParam   and   fExtended)   =   fExtended))   then
    try
       if   IsChild(WB.Handle,   hWnd)   then
       {   handles   all   browser   related   messages   }
        begin
          with  WB.Application   as   IOleInPlaceActiveObject   do
               Handled   :=   TranslateAccelerator(Msg)   =   S_OK;
            if   not   Handled   then
             begin
              Handled   :=   True;
              TranslateMessage(Msg);
              DispatchMessage(Msg);
             end;
        end;
    except
    end;
end;

相关阅读 >>

Delphi idhttp下载html的代码(含错误处理)

Delphi实现类似android锁屏的密码锁控件

Delphi cxgrid中回车键光标移到下列

Delphi unigui 路径

Delphi idhttp 获取链接连通状态

Delphi 读取软件卸载信息和桌面图标列表

Delphi richedit接受消息的问题

Delphi tadodataset 中文使用说明

Delphi append 追加内容到文件中

Delphi的对象注销方法destroy和free的区别

更多相关阅读请进入《Delphi》频道 >>



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...