如何在Windows应用程序中使用计时器每20秒旋转一次窗体?

时间:2013-07-16 04:23:41

标签: vb.net windows-applications

我有四种窗体形式,即:form1.vb,
form2.vb,
form3.vb,
form4.vb。

我还有一个母版页,即form5.vb。所以我每隔20秒在form5.vb中逐个旋转四个窗体。怎么做?

3 个答案:

答案 0 :(得分:1)

在20秒计时器上,您可以在每张表单上调用“BringToFront”。

http://msdn.microsoft.com/en-us/library/system.windows.forms.control.bringtofront.aspx

答案 1 :(得分:1)

基本上,您创建一个计时器并在每个表单上调用函数BringToFront

在C#中:

static int counter = 1;

static void StartRotating()
{
    System.Windows.Forms.Timer myTimer = new System.Windows.Forms.Timer();
    myTimer.Interval = 20000; // 20 seconds 
    myTimer.Tick += new EventHandler(TimerEventProcessor);
    myTimer.Start();
}

private static void TimerEventProcessor(Object myObject,
                                        EventArgs myEventArgs) {
    // you could use a switch statement also
    if(counter==1) form1.BringToFront();
    if(counter==2) form2.BringToFront();
    if(counter==3) form3.BringToFront();
    if(counter==4) { 
        form4.BringToFront(); 
        counter=0; //reset counter
        }
    counter++;
}

答案 2 :(得分:0)

您需要保留索引以了解当前显示的表单,然后在计时器已用事件中执行此操作

            formtoshow.TopMost = true;
            formtoshow.BringToFront();