最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C# Winform中實(shí)現(xiàn)主窗口打開(kāi)登錄窗口關(guān)閉的方法

 更新時(shí)間:2014年08月12日 09:44:40   投稿:junjie  
這篇文章主要介紹了C# Winform中實(shí)現(xiàn)主窗口打開(kāi)登錄窗口關(guān)閉的方法,這在需要用戶名密碼的軟件項(xiàng)目中是必用的一個(gè)技巧,要的朋友可以參考下

在使用C#進(jìn)行Winform編程時(shí),我們經(jīng)常需要使用一個(gè)登錄框來(lái)進(jìn)行登錄,一旦輸入的用戶名密碼登錄成功,這時(shí)登錄窗口應(yīng)該關(guān)閉,而且同時(shí)打開(kāi)主程序窗口。該如何來(lái)實(shí)現(xiàn)呢?

乍一想,很簡(jiǎn)單啊,打開(kāi)主窗口就用主窗口的Show()方法,而關(guān)閉登錄窗口就用登錄窗口的Close()方法即可。即代碼如下:

Program.cs中代碼:

復(fù)制代碼 代碼如下:

Application.Run(new FormLogin());

登錄窗口(FormLogin)代碼:
復(fù)制代碼 代碼如下:

private void button1_Click(object sender, EventArgs e)
{
    if (textBox1.Text == "a") {  //驗(yàn)證用戶名密碼

        FormMain fm = New FormMain();
        fm.Show(); //打開(kāi)主窗口
        this.Close();    //關(guān)閉登錄窗口
    }
}


事實(shí)證明,這種辦法是行不通的。因?yàn)橹鞔翱谑怯傻卿洿翱诖蜷_(kāi)的,所以我們?cè)陉P(guān)閉登錄窗口時(shí),主窗口也會(huì)被一起關(guān)閉。這是一個(gè)線程樹(shù),或者窗口樹(shù)的關(guān)系,即一個(gè)窗口關(guān)閉時(shí),由它打開(kāi)的新窗口都將被關(guān)閉。

那么應(yīng)該怎么解決呢?經(jīng)過(guò)小編鑒定,網(wǎng)上有這樣一種解決辦法是很不錯(cuò)的。

Program.cs中代碼:

復(fù)制代碼 代碼如下:

FormLogin fl = new FormLogin();
fl.ShowDialog();
if (fl.DialogResult == DialogResult.OK)
{
    Application.Run(new FormMain());
}
else
{
    return;
}

即先將登錄窗口作為一個(gè)對(duì)話框打開(kāi),如果這個(gè)對(duì)話框返回一個(gè)DialogResult.OK的值,那么就表示登錄驗(yàn)證成功了,于是打開(kāi)主窗體。如果驗(yàn)證失敗,則程序結(jié)束、退出。

在登錄窗體(FormLoin)中代碼:

復(fù)制代碼 代碼如下:

private void button1_Click(object sender, EventArgs e)
{
    if (textBox1.Text == "aaa") {  //驗(yàn)證用戶名密碼成功
        this.DialogResult = DialogResult.OK;    //返回一個(gè)登錄成功的對(duì)話框狀態(tài)
        this.Close();    //關(guān)閉登錄窗口
    }
}

這個(gè)方法不錯(cuò),大家可以試試。

關(guān)于Winform如何實(shí)現(xiàn)主窗口打開(kāi)時(shí)登錄窗口關(guān)閉,本文就介紹這么多,希望對(duì)您有所幫助,謝謝!

相關(guān)文章

最新評(píng)論

石泉县| 塔城市| 石屏县| 新晃| 县级市| 涿州市| 揭东县| 三台县| 昌都县| 米林县| 商城县| 县级市| 淄博市| 抚远县| 繁峙县| 贡山| 天津市| 简阳市| 云浮市| 敦化市| 秦皇岛市| 灵丘县| 陆川县| 永春县| 无极县| 壶关县| 榕江县| 忻城县| 庆元县| 阳东县| 岱山县| 东丽区| 广宁县| 宁强县| 永定县| 葵青区| 阳东县| 车致| 洞头县| 海晏县| 南通市|