1. 登录界面的效果图
1、默认用户类型为收银员并且居中登录窗口出现在屏幕正中央,并且不能放大缩小
2、tab全选用户名
3、tab全选密码
4、收银员用户名和密码输入正确时
默认
用户类型收银员
5、库管员用户名和密码输入正确时
默认
用户类型库管员
6、用户名或密码输入错误时
2. 登录界面实现的功能描述
1.登陆界面可以实现以库管员、收银员两个不同用户来登陆各自的管理系统;
2.选择某一用户类型,输入正确的用户名以及密码后点击“登录”尝试登录;
3.点击“退出”即可退出登录界面
3. 登录界面各控件的参数设置
控件A:Lable
属性 |
值 |
Lable1 |
用户类型 |
Lable2 |
用户名 |
Lable3 |
密码 |
控件B:LinkLable
控件C:TextBox
属性 |
值 |
TextBox1 |
空白值(可输入值) |
TextBox2 |
空白值(可输入值) |
控件D:ComboBox
控件E:Button
属性 |
值 |
Button1 |
登陆 |
Button2 |
退出 |
控件F:PictureBox
属性 |
值 |
PictureBox1 |
详情请看登陆界面截图 |
4. 重要方法描述
1.窗口加载时,设置默认角色为“收银员”
// 窗口加载时,设置默认角色为“收银员”
private void Form1_Load(object sender, EventArgs e)
{
this.comboBox1.SelectedIndex = 0;
}
2.点击“退出”按钮则退出应用程序
// 点击“退出”按钮则退出应用程序
private void button2_Click(object sender, EventArgs e)
{
Application.Exit();
}
private void textBox2_TextChanged(object sender, EventArgs e)
{
}
3.点击“登录”按钮则登录系统
// 点击“登录”按钮则登录系统
private void button1_Click(object sender, EventArgs e)
{
if (this.comboBox1.SelectedItem.ToString() == "收银员")
{
if (this.textBox2.Text == "syyuan" && this.textBox1.Text == "123456")
{
MessageBox.Show("收银员登录成功");
}
else
{
MessageBox.Show("用户名或密码错误", "提示", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
if (this.comboBox1.SelectedItem.ToString() == "库管员")
{
if (this.textBox2.Text == "kuguan" && this.textBox1.Text == "kuguan")
{
MessageBox.Show("库管员登录成功");
}
else
{
MessageBox.Show("用户名或密码错误", "提示", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
}
4、用户名最大长度不超过9个字符(MaxLength 指定可以在编辑控件中输入的最大字符数)
5、密码用“*”显示(PassworfChar 指示将为单行编辑控件的密码输入显示的字符)
5. 想一想,还有哪些尚需完善的功能
1. 输入用户名后回车,光标跳转到密码输入框(涉及到 KeyPress 事件和 Tab 键顺序)
// 在用户名输入框中按“回车”,光标跳转到密码输入框
private void textBox2_KeyPress(object sender, KeyPressEventArgs e)
{
if (e.KeyChar == (char)Keys.Enter)
{
SendKeys.Send("{tab}");
}
}
2. 输入密码后回车,则直接登录(涉及到 TextBox 的 KeyPress 事件)
// 在密码输入框中按“回车”,则直接登录
private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
{
if (e.KeyChar == (char)Keys.Enter)
{
this.button1_Click(sender, e);
}
}
3. 按 Tab 进入输入框时,自动全选(涉及到 TextBox 的 Enter 事件)
// Tab进入用户名输入框时,自动全选用户名
private void textBox2_Enter(object sender, EventArgs e)
{
((TextBox)sender).SelectAll();
}
// Tab进入密码输入框时,自动全选密码
private void textBox1_Enter_1(object sender, EventArgs e)
{
((TextBox)sender).SelectAll();
}