发布网友 发布时间:2022-05-12 23:39
共3个回答
懂视网 时间:2022-05-13 04:01
回车触发的是onsubmit事件,弹出的话也要写在onsubmit事件里才行。
回车触发的是onsubmit事件,弹出的话也要写在onsubmit事件里才行。
我只是好奇关于submit组件的onclick事件,在不同的情况下按下回车未必会响应
onsubmit是提交表单,onclick是鼠标点击。
他们两个本来是为了不同的情况设计的,如果是同一个情况为何要设计2个呢?
虽然还不是搞得很明白,不过感觉没必要钻牛角尖
热心网友 时间:2022-05-13 01:09
这个问题其实非常的复杂。
因为Delphi在编写Webbrowser的时候,没有正确地编写快捷键的翻译程序。所以导致出现了这个问题。如果你想要解决这个问题的话。就必须首先改正Webbrowser的这个Bug.
解决方法如下:
首先从你的Delphi源码目录中找出OleCtrls.pas文件。然后复制这个文件到你工程目录,并添加到你的工程中。
修改你复制的OleCtrls.pas文件,首先从这个文件中找到TOleControl.WndProc函数,然后在这个函数中找到这一行:
WinMsg.HWnd := Handle;
将此行改为
WinMsg.HWnd := GetFocus;
因为Webbrowser可能存在焦点定位错误的问题。所以,同样需要复制SHDocVw.pas文件到你的目录,并添加到你的工程中。并在重载TWebbrowser的WndProc函数:
procere TWebbrowser.WndProc(var Msg: TMessage);另外,你如果使用的是Delphi XE2 以上的版本,OleCtrls单元的名称可能为Vcl.OleCtrls。你可能需要在ShdocVw单元中引用Forms、Messages与Controls单元。
热心网友 时间:2022-05-13 02:27
捕获keydown、keypress、keyup的事件,处理当keyCode = 13的时候去调用一下就行,如果还是不会的话继续联系我jialiu830205@163.com