(1)新建一个windows窗体,命名为frmLogin.cs,主要用于实现系统的登录功能。该窗体主要用到的控件如下:
控件类型 | 控件ID | 主要属性设置 | 用途 |
TextBox | txtName | 无 | 输入登录用户名 |
TextBox | txtPwd | PasswordChar属性设置为“*” | 输入登录密码 |
Button | btnLogin | Text属性设置为“登录” | 登录 |
Button | btnExit | Text属性设置为“退出” | 退出 |
DataCon datacon = new DataCon();
DataOperate dataopetate = new DataOperate();
单击“登录”按钮,首先判断是否输入了用户名,如果没有输入用户名,弹出信息提示框,提示用户名不能为空;否则,系统会判断输入的用户名和密码是否与数据库中记录相符。如果符合,则隐藏当前窗体,并显示主窗体;否则弹出“用户名或密码错误”的提示。“登录”按钮的Click事件代码如下:
private void btnLogin_Click(object sender, EventArgs e)
{
if(txtName.Text == "")
{
errorProName.SetError(txtName,"用户名不能为空");
//SetError该方法用来设置ErrorProvider控件的提示信息
}
else
{
errorProName.Clear();
string strSql = "select * from tb_admin where name ='" + txtName.Text + "'and pwd'" + txtPwd.Text + ="'";
DataSet ds = dataoperate.getDs(strSql,"tb_admin");
//DataSet根据用户输入的用户名和密码在数据库中查找记录
//并填充到DataSet数据集
//Count 该属性用来获得DataSet数据集中所包含表的行数
if(ds.Table[0].Row.Count > 0)
{
this.Hide();
frmMain frmmain = new frmmain();
frmmain.Show();
}
else
{
MessageBox.Show("用户名或密码错误!","警告",MessageBoxButton.OK,MessageBoxIcon.Warning);
}
}
}
当输入用户名或密码之后,还可以按Enter键将鼠标焦点移动到下一个控件上。实现原理是在输入用户名或密码的文本框的keyPress事件下,判断是否按了Enter键,如果是,则将焦点移动到下一个控件上。按Enter键移动鼠标焦点的实现代码如下:
private void txtName_KeyPress(Object sender, KeyPressEventArgs e)
{
if(e.KeyChar == 13) //判断是否按下Enter键
{
txtPwd.Focus(); //使“密码”按钮获得焦点
e.Handled = true;
}
}
private void txtPwd_KeyPress(Object sender, KeyPressEventArgs e)
{
if(e.KeyChar == 13) //判断是否按下Enter键
{
btnLogin.Focus(); //使“登录”按钮获得焦点
e.Handled = truep;
}
}
单击“退出”,退出当前应用程序。“退出”按钮的Click事件代码如下:
private void btnExit_Click(Object sender, EventArgs e)
{
Application.Exit();
}