在winform 界面編程中,我們有時(shí)候要在主界面打開之前先顯示登錄界面,當(dāng)?shù)卿浗缑嬗脩粜畔⑿r?yàn)正確后才打開主界面,而這時(shí)登陸界面也完成使命該功成身退了。
目前有兩種方法可實(shí)現(xiàn):
方法1. 隱藏登錄界面
Program.cs 中代碼如下:
/// <summary>/// 應(yīng)用程序的主入口點(diǎn)。/// </summary> [STAThread] static void Main() { Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); Application.Run(new Login()); }
Login.cs 中代碼如下:
/// <summary>/// login/// </summary>/// <param name="sender"></param> /// <param name="e"></param> private void btnLogin_Click(object sender, EventArgs e) { if (txtPassword.Text == "12345678") { UI ui = new UI(); this.Visible = false; ui.ShowDialog();//此處不可用Show() this.Dispose(); this.Close(); } else { MessageBox.Show("Password is incorrect ", "Prompt message",MessageBoxButtons.OK,MessageBoxIcon.Error); } } /// <summary> /// exit /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btnExit_Click(object sender, EventArgs e) { this.Dispose(); this.Close();}
方法2. 登錄界面以 dialog形式打開,返回登錄結(jié)果
Program.cs 中代碼如下:
/// <summary>/// 應(yīng)用程序的主入口點(diǎn)。/// </summary> [STAThread] static void Main() { Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); Login login = new Login(); login.ShowDialog(); if (login.DialogResult == DialogResult.OK) { login.Dispose(); Application.Run(new UI()); } else if (login.DialogResult == DialogResult.Cancel) { login.Dispose(); return; }}
Login.cs 中代碼如下:
/// <summary>/// login/// </summary>/// <param name="sender"></param>/// <param name="e"></param> private void btnLogin_Click(object sender, EventArgs e) { if (txtPassword.Text == "12345678") { this.DialogResult = DialogResult.OK; this.Dispose(); this.Close(); } else { MessageBox.Show("Password is incorrect ", "Prompt message",MessageBoxButtons.OK,MessageBoxIcon.Error); } } /// <summary> /// exit /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btnExit_Click(object sender, EventArgs e) { this.DialogResult = DialogResult.Cancel; this.Dispose(); this.Close();}
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持VEVB武林網(wǎng)。
新聞熱點(diǎn)
疑難解答
圖片精選
網(wǎng)友關(guān)注