简体   繁体   中英

How to make two pictures not visible after a certain time

I'm making a memotest and I need to press two different images and they need to keep visible for 3-5 seconds. I've tried Thread.Sleep(5000) but it doesn't show me the second one. What should I do? The only way I've founded to see for some seconds the images was by putting a MessageBox but that isn't the idea and I don't know other way to do it.

if (pic != null && pic.Name == fondos[i].Name)
{
    if (CantClick == 0)
    {
        ParejaActual = listRandom[i].pareja;
        CantClick = 1;
        primerI = i;
        picAnterior = pic;
        imgAnterior = img;
        pic.Visible = false;

    }
    else if (CantClick == 1)
    {
        pic.Visible = false;
        if (ParejaActual == listRandom[i].pareja)
        {
            SoundPlayer simpleSound = (new SoundPlayer(Configuracion.RootFolder + "aplau.wav"));
            simpleSound.Play();
            Ganando++;
            label3.Text = Ganando.ToString();
            //MessageBox.Show("Si");
            //NO SE DESTAPA LA SEGUNDA.
            //Thread.Sleep(5000);
            CantClick = 0;
            img.Visible = false;
            imgAnterior.Visible = false;
            Application.DoEvents();

        }
        else
        {

            (new SoundPlayer(Configuracion.RootFolder + "sad.wav")).Play();
            MessageBox.Show("No");
            Mal++;
            CantClick = 0;
            label4.Text = Mal.ToString();
            pic.Visible = true;
            picAnterior.Visible = true;
        }
    }
}

Thank you!

Instead of using Thread.Sleep , use System.Timers class. After an interval, just hide one image and show the other. Tell me if you want any other help.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM