如何使用不同的变量多次启动方法

时间:2018-11-11 04:34:40

标签: c# multithreading selenium google-chrome task

我一直在创建一个autocheckout机器人,并且对C#还是陌生的,并且通常会进行编码。我已经走了很远,几乎已经完成了该程序,或者我想,现在,我希望能够创建多个任务或多次运行task方法。我还希望能够输入不同的“个人资料”,该个人资料分别为每个任务定义了字符串,例如登录电子邮件,密码等。我很困,甚至不知道从哪里开始,也许有人可以指出正确的方向让我开始吗?上次我从这个社区获得了一些了不起的帮助,这对我有很大帮助。这是我目前的尝试:

import json
f = open('myfile.json','r')
tickets = json.loads(f.read())

我有启动这些任务的按钮,但我也希望更改变量,例如我在Windows窗体中设置的状态文本。这是我的GUI,如果它可以帮助您更好地理解我的代码: https://gyazo.com/c6e9334e04aeb223e0afade6da8bec4e

如果您还有其他需要,请告诉我!我不确定是否允许这样做,但是我愿意花钱帮助我解决这个问题,因为我只有16哈哈,所以我愿意付出多少,但是无论如何,谢谢!!

2 个答案:

答案 0 :(得分:0)

好吧,我不确定这是否是您想要的,但是如果您要运行具有不同变量值的方法,请创建方法:

public void MyMethod(string myVariable)
{
//do something with myVariable
}

调用方法时,您可以传递不同的变量值:

MyMethod("123abc");

或类似的东西

var newVariable="123abc"
MyMethod(newVariable);

答案 1 :(得分:0)

要使用带有变量的不同输入创建方法来启动方法

public void MyUsername(string username)
{
    MessageBox.Show(username);
}

private void buttonUsername1_Click(object sender, EventArgs e)
{
    MyUsername("Adam");
}
private void buttonUsername2_Click(object sender, EventArgs e)
{
    MyUsername("Jack");
}

要多次启动方法,请使用循环

private void btnDoAllTask_Click(object sender, EventArgs e)
{
    int count = 0;
    // run 5 times
    while(count < 5)
    {
        count++;
        MyUsername("username" + count.ToString());
    }
}

或遍历数组

private void btnDoAllTask_Click(object sender, EventArgs e)
{
    var listUsername = new string[] { "one", "two", "three" };
    foreach (var username in listUsername)
    {
        MyUsername(username);
    }
}