使用计时器在多个表单之间自动切换

本文关键字:之间 表单 计时器 | 更新日期: 2023-09-27 18:37:21

我有 5 个表单、1 个主表单和 4 个表单,我希望它们每隔几秒钟自动在彼此之间切换(轮流,每个表单 x 秒并切换到下一个)。

到目前为止,我有 2 种表单每 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();
    }