DELPHI Webbrowser 响应回车键(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;


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值