delphi - 如何让 TWebBrowser 忽略其他控件的加速器字符?

标签 delphi browser mshtml twebbrowser

我将一个 TWebBrowser 放在一个启用了 designMode 的窗体上。
在浏览器下方,我有一个关闭按钮,标题设置为“Clos&e”。
当我在 WebBrowser 中编辑文档的内容并按下 E 键时,将调用关闭按钮。
它似乎像对待其他不处理键和/或不接受字符(例如 TButton)的控件一样对待 TWebBrowser。

我该如何解决这个问题?

提前致谢。

最佳答案

从 TWebBrowser 下降,覆盖 CN_CHAR 消息处理程序,并返回 0。使用 Alt+E 触发快捷方式仍然有效。

type
  TWebBrowser = class(SHDocVw.TWebBrowser)
    procedure CNChar(var Message: TWMChar); message CN_CHAR;
  end;

...

procedure TWebBrowser.CNChar(var Message: TWMChar);
begin
  Message.Result := 0;
end;

关于delphi - 如何让 TWebBrowser 忽略其他控件的加速器字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2602239/

相关文章:

java - 在 Java 中将毫秒转换为 TDateTime

delphi - 如何使用 Indy 在 DNS 中找到 LDAP 服务器?

delphi - 如何调试(可能的)RTL 问题?

html - 伪类和文本装饰问题 :underline in IE6

internet-explorer - Internet Explorer 自动化 : how to suppress Open/Save dialog?

delphi - 在DCOM中传输记录最快的方法是什么

javascript - Jeep-sqlite 加载程序未在网络中运行

html - 为不同的浏览器更改 CSS

c# - 如何将内联样式注入(inject)到我的 WPF WebBrowser 中加载的文档中?

javascript - Rundll32.exe javascript