【发布时间】:2014-11-22 04:08:12
【问题描述】:
程序
我有一个类似于任何网络浏览器的程序;但是,我有一个带有文本框和按钮的工具条。我希望能够使用 Sendkeys.Send 方法将文本框中的文本发送到 webbrowser 控件。问题是为了点击按钮发送文本,必须在点击按钮之前让浏览器聚焦。这是一个问题,因为您不能在发送文本之前在文本框中输入文本,否则 webbrowser 控件将失去焦点并阻止它发送任何内容。
我的目标
网络浏览器加载后,我导航到一个页面,我希望能够使用文本框和按钮向它发送文本。因此,为了做到这一点,我必须(假设)以编程方式聚焦 webbrowser 控件。
我的代码:
Private Sub ToolStripMenuItem15_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles ToolStripMenuItem15.Click
WebBrowser1.Focus() ' set focus to webbrowser (!DOES NOT WORK!)
SendKeys.Send("{ENTER}")
SendKeys.Send(ToolStripTextBox1.Text & " " & ToolStripTextBox4.Text)
SendKeys.Send("{ENTER}")
End Sub
我也知道用于调用网页中特定元素的“InvokeMember”方法,但我不需要它,因为文本框(在加载的网页中)已经聚焦。我只需要关注 webbrowser CONTROL 以便使用按钮发送文本。
编辑:如果它有助于可视化程序,它只包含一个网络浏览器,以及一个带有文本框和按钮的工具条。
【问题讨论】: