Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/329.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 使用计时器在多个窗体之间自动切换_C#_Visual Studio 2010 - Fatal编程技术网

C# 使用计时器在多个窗体之间自动切换

C# 使用计时器在多个窗体之间自动切换,c#,visual-studio-2010,C#,Visual Studio 2010,我有5个表单,1个主表单和4个表单,我希望它们每隔几秒钟自动切换一次(轮流,每个表单x秒,然后切换到下一个表单) 到目前为止,我有两个表单,每2秒钟在彼此之间切换一次 void mytimer_Tick(object sender, EventArgs e) { if (!frm2.Focused) frm2.Focus(); else frm3.Focus(); } private void Fo

我有5个表单,1个主表单和4个表单,我希望它们每隔几秒钟自动切换一次(轮流,每个表单x秒,然后切换到下一个表单)

到目前为止,我有两个表单,每2秒钟在彼此之间切换一次

void mytimer_Tick(object sender, EventArgs e)
    {
        if (!frm2.Focused)
            frm2.Focus();
        else
            frm3.Focus();
    }
 private void Form1_Load_1(object sender, EventArgs e)
    {
       Timer mytimer = new Timer();
       mytimer.Tick += mytimer_Tick;
       mytimer.Interval = 2000;
       mytimer.Start();

    }

谢谢。

原始格式。但你会明白的

    private void HideAllForms()
    {
        frm1.Hide();
        frm2.Hide();
        frm3.Hide();
        frm4.Hide();
    }
    void mytimer_Tick(object sender, EventArgs e)
    {
        if (frmSrl == 1)
        {
            frmSrl++;
            HideAllForms();
            frm1.Show();
        }
        else if (frmSrl == 2)
        {
            frmSrl++;
            HideAllForms();
            frm2.Show();
        }
        else if (frmSrl == 3)
        {
            frmSrl++;
            HideAllForms();
            frm3.Show();
        }
        else if (frmSrl == 4)
        {
            frmSrl =1;
            HideAllForms();
            frm4.Show();
        }
        else
            frmSrl = 1;
    }
    int frmSrl = 1;
    private void Form1_Load_1(object sender, EventArgs e)
    {
        Timer mytimer = new Timer();
        mytimer.Tick += mytimer_Tick;
        mytimer.Interval = 2000;
        mytimer.Start();
    }

这需要单独的表格吗?更好的办法是将不同的面板以相同的形式显示在一堆
中,否则如果
看起来很难看,我建议使用一个表单数组。