gpt4 book ai didi

c# - 等待点击一个按钮

转载 作者:行者123 更新时间:2023-11-30 14:14:26 27 4
gpt4 key购买 nike

我在学习 WatiN API 时遇到了问题。

我将 WatiN api 与 WebBrowser 对象/控件一起使用,它在大多数情况下工作得很好。我正在尝试使用 API 在 google 中进行搜索,但按钮没有按预期点击。

我什至使用了来自 WatiN 站点的相同代码(略有不同):我的代码:

//need to use a thread to work with the WebBrowser object
var thread = new Thread(() =>
{
Settings.AutoStartDialogWatcher = false;

using (IE browser = new IE(webBrowser1.ActiveXInstance))
{
browser.GoTo("http://www.google.co.il");
browser.TextField(Find.ByName("q")).Value = " woowow";
browser.Button(Find.ByName("btnG")).Click();
}
});
thread.SetApartmentState(ApartmentState.STA);
thread.Start();

我可以设置要添加的文本,但是按钮 "btnG" 没有被点击。

当我在没有 WebBrowser 对象/控件的情况下使用此代码时,代码工作正常。

最佳答案

我发现了问题。

我需要将焦点转移到网站。

这行代码有效:

 browser.NativeDocument.Body.SetFocus();

所以现在代码看起来像这样:

Settings.AutoStartDialogWatcher = false;

browser = new IE(webBrowser1.ActiveXInstance);

browser.GoTo("http://www.google.co.il");
browser.TextField(Find.ByName("q")).Value = " woowow";

browser.NativeDocument.Body.SetFocus(); // set focus befor u click

browser.Button(Find.ByName("btnG")).Click();


});
thread.SetApartmentState(ApartmentState.STA);
thread.Start();

关于c# - 等待点击一个按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12215326/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com