Tab key support in an IWebBrowser2 control

后端 未结 2 1046
囚心锁ツ
囚心锁ツ 2020-12-21 04:56

I have an embedded IWebBrowser2 control using straight C++ (windowed, not windowless) and when someone hits the Tab key to go between fields in the browser, it jumps focus o

相关标签:
2条回答
  • 2020-12-21 05:35

    Accelerator keystrokes like tab are handled by the message loop before being dispatched. As such a hook function needs to be called by a message loop - IOleInPlaceActiveObject::TranslateAccelerator iirc. - to give the control the chance to do keyboard navigation type things.

    0 讨论(0)
  • 2020-12-21 05:35

    I solved this problem by below link.

    http://social.msdn.microsoft.com/Forums/en-US/ieextensiondevelopment/thread/1f485dc6-e8b2-4da7-983f-ca431f96021f/

    IWebBrowser2* iBrowser;
    IOleInPlaceActiveObject* pIOIPAO;
    
    hr = mpWebObject->QueryInterface(IID_IWebBrowser2,(void**)&iBrowser);
    if ( SUCCEEDED(hr) )
    {
    iBrowser->QueryInterface(IID_IOleInPlaceActiveObject,(void**)&pIOIPAO);
              if ( SUCCEEDED(hr) )
              {
              pIOIPAO->TranslateAccelerator(msg);
                        pIOIPAO->Release();
              }
              iBrowser->Release();
    
    }
    
    0 讨论(0)
提交回复
热议问题