【问题标题】:Any way to tell content has changed with a TWebBrowser in DesignMode?在 DesignMode 中使用 TWebBrowser 有什么方法可以告诉内容发生了变化?
【发布时间】:2012-05-13 00:14:48
【问题描述】:

如果将 TWebBrowser 置于 DesignMode (HTMLDocument2.designMode := 'On';) 中,是否有办法在用户键入控件时检测文档的更改,类似于像 TEdit 这样的 std ctrls 的 OnChange 事件/TMemo?

谢谢

【问题讨论】:

    标签: delphi twebbrowser


    【解决方案1】:

    一旦您实现 IHTMLEditDesigner 界面并将其连接到 WebBrowser(您应该能够在网络上找到有关如何执行此操作的资源),这很容易实现。

    那么关键部分就是使用PreHandleEvent:

    function TWebBrowserFrame.PreHandleEvent(inEvtDispId: Integer;
      const pIEventObj: IHTMLEventObj): HResult;
    begin
      Result := S_FALSE;
      If inEvtDispId = DISPID_EVMETH_ONKEYDOWN Then
          ...
      if pIEventObj.keyCode = ... etc...
    end;
    

    这个页面有一些有用的信息:(DISPID 常量来自哪里......) http://www.codeproject.com/Articles/6546/Using-IHTMLEditDesigner

    【讨论】:

      猜你喜欢
      • 2022-06-17
      • 2013-12-23
      • 1970-01-01
      • 2021-04-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-08-09
      • 2023-03-12
      相关资源
      最近更新 更多