Как настроить выполнение кода только один раз? - PullRequest
0 голосов
/ 29 июля 2011

В свой проект я включил заставку.

Для этого я написал ниже код в окне входа Подрядчик.Заставка работает отлично.Но после входа в систему открывается главная страница.если он закрыт, значит, логин открыт.

В этом случае заставка пересекает страницу логина.Я не хочу этого

Как это сделать: заставка, показанная только один раз в моем проекте?

Помогите мне ...

public LogIn()
{
    InitializeComponent();

    Thread th = new Thread(new ThreadStart(Splash));
    th.Start();
    Thread.Sleep(3000);
    th.Abort();
    Thread.Sleep(1000);
} 

private void Splash()
{
    Welcome sp = new Welcome();
    sp.ShowDialog();
}

Ответы [ 3 ]

5 голосов
/ 29 июля 2011
private void Form1_Load(object sender, EventArgs e)
{
    SplashScreen Splash = new SplashScreen();
    Splash.Show();
}

если вы хотите, чтобы SplashScreen закрывался через 3 секунды, тогда используйте таймер в SplashScreen и через 3 секунды используйте this.close ()

2 голосов
/ 29 июля 2011

Вы можете передать логический параметр, который даст указание конструктору входа отображать или не отображать заставку.

 public LogIn(boolean splashOpened)
    {
        InitializeComponent();

        if(!splashOpened) //If Splash Screen is not opened , Open it
        {
            Thread th = new Thread(new ThreadStart(Splash));
            th.Start();
            Thread.Sleep(3000);
            th.Abort();
            Thread.Sleep(1000);           
        }
    } 

    private void Splash()
    {
        Welcome sp = new Welcome();
        sp.ShowDialog();
    }
1 голос
/ 29 июля 2011
private static Welcome sp;

public LogIn()
{
    InitializeComponent();

    if (sp == null)
    {
        Thread th = new Thread(new ThreadStart(Splash));
        th.Start();
        Thread.Sleep(3000);
        th.Abort();
        Thread.Sleep(1000);
    }
} 

private void Splash()
{
    if (sp == null)
    {
        sp = new Welcome();
        sp.ShowDialog();
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...