我是编程的新手,我正在尝试使用webbrowser1
来增加网页上的点击计数器,我可以通过点击按钮来手动执行此操作来增加点击计数器,我真的是我想做的是制作一个for(i=0; i < 10 ; i++)
语句来刷新页面10次,但后来我使用这样的语句只增加了一页,请提前感谢以下代码。
url:http://www.comptechdoc.org/independent/web/cgi/javamanual/javaihit.html
namespace click
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
int i;
for (i = 0; i < 10; i++)
{
webBrowser1.Refresh();
Application.DoEvents();
}
}
}
}
编辑: 谢谢你们,感谢你们的帮助和快速回复。
我已经尝试了这里的代码:C# how to wait for a webpage to finish loading before continuing它似乎运作良好。
private void button1_Click(object sender, EventArgs e)
{
int i;
for (i = 0; i < 10; i++)
{
webBrowser1.Navigate(url);
while (webBrowser1.ReadyState != WebBrowserReadyState.Complete)
Application.DoEvents();
}
}
答案 0 :(得分:0)
目标不是很好,作弊很糟糕:)
但是请尝试重新创建webBrowser控件。
答案 1 :(得分:0)
尝试将其放入循环中:
webBrowser1.Navigate(yourURL);
答案 2 :(得分:0)
这两个链接对您解决问题非常有用......
http://www.codeproject.com/KB/custom-controls/EasyHit.aspx
http://www.xdevsoftware.com/blog/post/Hit-Counter-for-ASPNET.aspx
答案 3 :(得分:0)
您刷新浏览器的速度太快 - 仅在服务器获取请求时计算命中(这需要花费一些时间,之前的请求会被下一个请求取消)。
namespace click
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
int i;
for (i = 0; i < 10; i++)
{
webBrowser1.Refresh();
Thread.Sleep(1000);
Application.DoEvents();
}
}
}
}
当然你也应该考虑你所做的道德方面......
答案 4 :(得分:-1)
你的问题不明确。无论如何,如果你想在1次命中中增加10次计数器值,你可以通过增加现有值+10来实现。
在您提供的链接中,您可以使用此代码
counter += 10
而不是
++counter