计时器并关闭应用程序

问题描述:

在form1中我有一个关闭按钮,可以打开Form2来关闭应用程序。我想在使用定时器的30个secons之后关闭form2,我的想法是使用一个在定时器运行时会变大的picturebox,但我认为我可以处理这最后一部分。 我把计时器放在窗体2中,我试图从form1控制它,但它不能识别计时器。 这是我的最后一个项目。我非常感谢你的帮助。 谢谢计时器并关闭应用程序

+2

请发布代码。显示确切的错误信息,如果有的话,“它不能识别错误”。显示你的尝试。 – Adam

+0

听起来像一个练习。我错了吗? – Schaliasos

public System.Timers.Timer MyTimer { get; set; } 
    int counter; 

    public Form2_Load() 
    { 
     MyTimer = new System.Timers.Timer(); 
     MyTimer.Interval = 1000; 
     MyTimer.Elapsed+=new System.Timers.ElapsedEventHandler(myTimer_Elapsed); 
     MyTimer.Start(); 
    } 

    void myTimer_Elapsed(object sender, System.Timers.ElapsedEventArgs e) 
    { 
     if (++counter == 30) 
     { 
      //do pic 
      this.Close(); 
     } 
    } 

如果你在form2中有这个,那么当你创建新的form2时,你可以处理定时器,当你显示对话框时它会启动定时器。

+0

谢谢!我做了一点不同,但你给了我这个想法,现在我的程序运行起来了! – user1370872

如果有帮助,您可以将计时器放在Form1上。它与哪种形式无关。定时器不依赖于Forms。您可以通过编程方式创建它们,而不必将它们放在表单上。将计时器添加到表单只是为您提供了一种在属性窗口中设置属性的简便方法。


另一种选择是设置TimerPublic的属性窗口的Modifiers属性(在Design部分)。它将使您能够从其他表单访问它。