WinForm学习笔记第一天(winForm登录与主窗体显示的打开个关闭)

刚开始学习WinForm做项目

 第一个问题就是在登录的时候验证正确的时候关闭登录窗体 显示主窗体

解决方法:

方法1: 在主窗体中先定义一个login窗体 再用 login 实例化一个窗体 并让该窗体以对话框的形式显示, 根据DialogResult的值来判断是否关闭该登录窗体 判断之后在运行主窗体

代码示例:

主窗体代码:

 static void Main()
        {
            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);

            Application.Run(new Login());
            Login log = new Login();
            log.ShowDialog();
            if (log.DialogResult == DialogResult.OK)
            {
                Application.Run(new Main());
            }
        }

login窗体的代码:

 private void button1_Click(object sender, EventArgs e)
        {
           // 判断用户名和密码是否正确的代码         

           if (验证正确)
           {
               this.DialogResult = DialogResult.OK;              
           }
           else
           {
               MessageBox.Show("输入的用户名或者密码错误!请重新输入!");
               

           }
         

        }

——————————————————————————

方法2:

 首先程序load主frmMain,主frmMain就会new一个Login并弹出登陆窗口,在登陆窗口验证密码正确以后设置DialogResult.OK这一句,再将对话框关闭。关闭以后from_load方法继续运行判断弹出的登陆框f2的DialogResult是否是ok,如果是,则加载主表单,如果否,则关闭主表单。

     在private void frmMain_Load(object sender, EventArgs e) 方法里添加以下代码

      Form f2 =new Login();
      f2.ShowDialog();
     
if (f2.DialogResult ==
DialogResult.OK)
      {
         MessageBox.Show(
"hello"
);   
      }
     
else

      {
        
this
.Close();
      }


      在private void btnLogin_Click(object sender, EventArgs e)里添加以下代码

 

if (Reader.HasRows)//判断是否有查询到对象的数据
{
      
this.DialogResult = DialogResult.OK;

      this.Close();
}


      主要原理就是利用的DialogResult = DialogResult.OK来实现的,

     

posted @ 2012-02-22 11:49  木子易  Views(3339)  Comments(2Edit  收藏  举报