今天,趁着一些空余时间,熟悉一下C#的进度条使用,没想到写了一个访问多次的Cheating软件。不过多次刷新页面的功能是其次,本质是为了做一个进度条的应用举例,以供自己的学习之用。
继续废话小说,一向的风格,代码行头。今日比较累,代码就不加注释了。
对于一个进度条,无碍乎是最小最大值,以及当前值等一些重要的属性,至于方法,用得较多的是PerformStep()和PerformClick()之类的。代码如下:
private void btnRun_Click(object sender, EventArgs e)
{
btnRun.Enabled = false;
if (txtBoxTarget.Text.Equals(String.Empty) || txtBoxTimes.Text.Equals(String.Empty))
{
MessageBox.Show("请输入连接的URL和连接次数!", "提示",
MessageBoxButtons.OK, MessageBoxIcon.Information);
return;
}
int length = Int32.Parse(txtBoxTimes.Text.Trim());
string url = txtBoxTarget.Text.Trim();
double process = 0;
int show = 0;
DateTime rightNow = DateTime.Now;
DateTime end;
TimeSpan interval;
toolStripStatusLabel.Text = "连接中";
progressBar.Visible = true;
progressBar.Minimum = 0;
progressBar.Maximum = length;
for (int i = 1; i <= length; i++)
{
try
{
// 这两句是连接某个网页的。
WebRequest myRequest = WebRequest.Create(url);
WebResponse myResponse = myRequest.GetResponse();
myResponse.Close();
}
catch
{
txtBoxReport.Text = "网络连接有误!";
return;
}
progressBar.PerformStep();
process = i / length;
show = (int)process * 100;
}
progressBar.Visible = false;
toolStripStatusLabel.Text = "已就绪";
txtBoxReport.Text = "连接 " + url + " " + length + "次。";
end = DateTime.Now;
interval = end - rightNow;
txtBoxReport.Text += "\r\n共耗时" + interval.TotalMilliseconds + "毫秒。";
btnRun.Enabled = true;
}
这是个按钮的实现方法,一旦按下,就会执行代码段中的内容。程序自动连接到某个网页,然后关闭,以此来作为计数,测试进度条是否正常。
这次,就以我自己的博客做小白鼠了,呵呵。结果当然是明显了,大家看看我的访问数量就知道了……可能测试进度条的目的变味了,不过还是要说明一下,写这个软件的目的只是作为学习,没有增加点击率,扰乱网络秩序的意思。如果有,就不是500,而是5000000了,这样更能看清楚进度条的走动。PS:尽管该软件叫VisitCheat。
运行情况如下:
进度条会慢慢走到终点,程序设计方法正常。