vb.net - 关于 GeckoWebBrowser KeyEvent
问题描述
我想将 keycode 发送到 GeckoWebBrowser,html 源代码如下:
<input onkeypress="return event.charCode >= 48 ; event.charCode <= 57" disabled="" id="field1" type="tel" value="" pattern="[0-9]*">
the VB.NET code:
Dim ev As DomEventArgs = GeckoWebBrowser1.Document.CreateEvent("KeyEvents")
Dim curInput As GeckoInputElement
curInput = GeckoWebBrowser1.Document.GetElementById("field1")
curInput.Focus()
nsIEventVar.InitKeyEvent(New nsAString("keypress"), True, False, GeckoWebBrowser1.Window.DomWindow, False, False, False, False, Keys.Enter, Keys.NumPad0)
nsIEventVar.InitKeyEvent(New nsAString("keyUp"), True, False,
GeckoWebBrowser1.Window.DomWindow, False, False, False, False, Keys.Up, Keys.NumPad0)
Xpcom.QueryInterface(Of nsIDOMEventTarget)(curInput.DomObject).DispatchEvent(nsIEventVar)
但不成功将 0 发送到输入控件。
解决方案
推荐阅读
- c# - 将 # 字符替换为空格和 # 字符
- java - 如何对restTemplate进行junit测试?
- appium-android - 原始错误:找不到“aapt.exe”
- reactjs - ReactJS 创建添加模式
- python-3.x - 浏览器等待的时间比预期的要长
- java - 如何使用 LinkedHashMap 解析包含多个标签的 xml 文件?
- xamarin.forms - 幻影 ShellGroupItem 被添加到 MainPage.InternalChildren 列表
- python - python hangman 计数器变量被卡住
- python - 将元数据添加到文件
- rest - Databricks 作业获取 javax.net.ssl.SSLHandshakeException:收到致命警报:调用在 Google Cloud 中运行的 api 时握手失败