当前位置:首页 > 计算机相关 > .net专区 > 正文内容

C# webbrowser模拟鼠标输入和键盘输入的方法,网上好多方法都不行,这个终于可以了

piikee8年前 (2015-11-05).net专区917
鼠标模拟点击的:
首先取得webbrowser的元素t: HtmlElement searchButton = eWB.Document.GetElementById("t");
我们点击一下鼠标,会触发三个事件,按顺序分别是mousedown,mouseup,click。这里不能直接invokemember一个mousedown,而是要onmousedown,意思是委托执行页面里面js等语言的onmousedown函数。
执行mousedown操作: searchButton.InvokeMember("onmousedown");
执行mouseup操作: searchButton.InvokeMember("onmouseup");
执行click操作: searchButton.InvokeMember("click");
键盘模拟输入的:
Keyword_a为要输入的一串字符,可以是各种字符包括中文,别担心,C#里面一个char是可以放一个中文字符的。
Char[] b = d_task.Keyword_a.ToCharArray();//把字符串变成char数组
for (int i = 0; i < b.Length; i++)//把char数组一个个通过sendkes输入
{
SendKeys.Send(b[i].ToString());
SendKeys.Flush();
delayTime(rd.Next(500, 2000));
}
这里送一个delaytime函数,可以在webbrowser执行输入等操作之后等一段时间,等它自己做自己的事情不会卡死
private void delayTime(double msecond)
{
DateTime tempTime = DateTime.Now;

while (tempTime.AddMilliseconds(msecond).CompareTo(DateTime.Now) > 0)
Application.DoEvents();
}

扫描二维码推送至手机访问。

版权声明:本文由萍客小居发布,如需转载请注明出处。

本文链接:https://www.piikee.net/1139.html

分享给朋友:

相关文章

Visual Studio配备供你的应用使用的图标库

操作步骤:在Visual Studio的安装目录:\Program Files\Microsoft Visual Studio 9.0\Common7\VS2008ImageLibrary\ 有个 VS2008ImageLibrary.zi...

图解vs2008打包全过程,含卸载功能

图解vs2008打包全过程,含卸载功能

1:新建安装部署项目打开VS编辑器,点击新建项目,选择:其他项目类型--安装与部署--安装向导(安装项目也一样),然后点击确定.(详细见下图)本文虽以VS2005打包为例,但是在VS2008下一样也可以用此法,本人已经在VS2008下测试通...

Windows 7下IIS+VS2008+Office2007无错完美安装方法

(1)先把IIS给装上。(2)安装VS2008。(3)安装Office2007。注意顺序,还有VS2008必须解压出来安装,不能用虚拟光驱。仅此而已。...

C#的窗体(WinForm)退出杂谈

1、Winform点击退出按钮,需要确认再退出:private void MainForm_FormClosing(object sender, FormClosingEventArgs e){if (MessageBox.Show("是否...

SQL2005服务无法启动,错误代码3417的终极解决办法

sql2005,在服务管理里面启动sql的服务报出错误代码3417的错误。错误框提示为:“Windows不能在 本地计算机 启动 SQL Server(MSSQLSERVER)。有关更多信息,查阅系统事件日志。如果这是非Microsoft...

div中英文无法自动换行的解决办法

问题:在一个设定好宽度的div中,当我们输入的中文文字长度超过了设定宽度时,会自动换到下一行。但是,如果输入的是英文字母,那么,无论你div设定宽度为多少,英文字母都是不换行直接在同一行输出,导致div的宽度远远超出设定的大小。原因:这是因...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。