【问题标题】:Setting Focus to WebBrowser Control in Visual Basic 2010 by Clicking a Button在 Visual Basic 2010 中通过单击按钮将焦点设置为 WebBrowser 控件
【发布时间】: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 以便使用按钮发送文本。

编辑:如果它有助于可视化程序,它只包含一个网络浏览器,以及一个带有文本框和按钮的工具条。

【问题讨论】:

    标签: vb.net visual-studio-2010


    【解决方案1】:

    使用WebBrowser1.Document.Focus() 代替WebBrowser1.Focus()

    【讨论】:

      猜你喜欢
      • 2010-12-01
      • 1970-01-01
      • 2012-06-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多