【发布时间】:2017-12-25 19:05:45
【问题描述】:
我制作了一个流量机器人...它适用于一个网站。我将其设置为多个网站。 因此我编码如下。
IEnumerator<string> proxies;
IEnumerator<string> websites;
private void button1_Click(object sender, EventArgs e)
{
List<string> strings = new List<string>();
string[] ipaddress = textBox2.Text.Split('\n');
for(int i=0;i<Convert.ToInt32(ipaddress.Length);i++){
strings.Add(ipaddress[i]);
}
proxies = strings.GetEnumerator();
timer1.Start();
//websites = strings.GetEnumerator();
//timer1.Start();
// websites.MoveNext();
proxies.MoveNext();
}
private void timer1_Tick(object sender, EventArgs e)
{
WinInetInterop.SetConnectionProxy(proxies.Current);
label1.Text = proxies.Current;
string[] website = textBox1.Text.Split('\n');
List<string> stringsweb = new List<string>();
for (int j = 0; j < Convert.ToInt32(website.Length); j++)
{
stringsweb.Add(website[j]);
}
websites = stringsweb.GetEnumerator();
timer2.Enabled = true;
//webBrowser1.Navigate(website[0]);
timer1.Enabled = proxies.MoveNext();
}
private void timer2_Tick(object sender, EventArgs e)
{
webBrowser1.Navigate(websites.Current);
label2.Text = websites.Current;
timer2.Enabled = websites.MoveNext();
}
如您所见,我在 timer1_Tick 中调用了 timer2_Tick 方法...但是我的代码不起作用...
问题是它没有在timer1_tick中调用timer2_Tick方法,所以网站没有加载...
Timer1,Timer2 间隔 =10s
我想做
从 textbox2 获取一个代理 ---> 为该代理加载 2 个网站
请告诉我我的错误
【问题讨论】:
-
Array 的 Length 属性已经是一个整数。无需转换它。您可以使用 string.Split('\n').ToList(); 直接从 Split 分配列表
-
好的。但它工作没有任何问题,这不是错误。
-
我会在 Timer1 滴答作响时将其设置为禁用,并使其保持禁用状态,直到 Timer2 滴答作响并完成对站点的导航。那时我会禁用 Timer2 并重新启用 Timer1
-
你能告诉我它作为答案吗?然后我可以检查它
标签: c# timer ienumerator