2.3系统主界面设计与制作
2018-12-03 本文已影响0人
jerry1999
界面登陆效果(GIF图片)展示
![](https://img.haomeiwen.com/i14080654/9e116bba5f9886bd.gif)
实现MDI主界面的主要步骤
(1).整体界面的功能结构的设计.
(2).界面可输入用户需求的设计.
(3).代码设计.
(4).最终登陆界面的跳转.
主界面涉及的控件以及属性和方法
(1).控件label(涉及属性Text;Font),Linklabel(涉及属性Text;Font).
(2).控件TextBox(涉及属性Multiline,方法Textchanged).
(3).控件Button(涉及属性Text;TextAlign方法Click).
(4).控件Combobox(涉及属性Flatstyle,方法SelectedIndexChanged).
功能与系统结构图关系
(1).控件combobox控件是选择登陆的类别(收银员或管理员).
(2).控件TextBox是登陆输入的条件而Linklabel控件是实现修改密码的链接.
(3).控件Button实现登陆以及界面跳转.
相关代码
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace SuperMarketSales
{
public partial class LoginForm : Form
{
public LoginForm()
{
InitializeComponent();
}
// 窗口加载时,设置默认角色为“收银员”
private void LoginForm_Load(object sender, EventArgs e)
{
this.cbb_Type.SelectedIndex = 0;
}
// 点击“登录”按钮则登录系统
private void bt_Login_Click(object sender, EventArgs e)
{
if (this.cbb_Type.SelectedItem.ToString() == "收银员")
{
if (this.tb_User.Text == "123456" && this.tb_Password.Text == "123456")
{
MessageBox.Show("收银员登录成功");
// 显示收银员主界面
MainFormUser formUser = new MainFormUser();
formUser.userName = this.tb_User.Text.ToString();
formUser.Show();
// 隐藏登录界面
this.Hide();
}
else
{
MessageBox.Show("用户名或密码错误", "提示", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
if (this.cbb_Type.SelectedItem.ToString() == "库管员")
{
if (this.tb_User.Text == "admin" && this.tb_Password.Text == "admin")
{
MessageBox.Show("库管员登录成功"); //文本框弹出
// 显示库管员主界面
MainFormAdmin formAdmin = new MainFormAdmin();
formAdmin.userName = this.tb_User.Text.ToString();
formAdmin.Show();
// 隐藏登录界面
this.Hide();
}
else
{
MessageBox.Show("用户名或密码错误", "提示", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
}
// 点击“退出”按钮则退出应用程序
private void bt_Exit_Click(object sender, EventArgs e)
{
Application.Exit();
}
// 在用户名输入框中按“回车”,光标跳转到密码输入框
private void tb_User_KeyPress(object sender, KeyPressEventArgs e)
{
if (e.KeyChar == (char)Keys.Enter)
{
SendKeys.Send("{tab}");
}
}
// 在密码输入框中按“回车”,则直接登录
private void tb_Password_KeyPress(object sender, KeyPressEventArgs e)
{
if (e.KeyChar == (char)Keys.Enter)
{
this.bt_Login_Click(sender, e);
}
}
// Tab进入用户名输入框时,自动全选用户名
private void tb_User_Enter(object sender, EventArgs e)
{
((TextBox)sender).SelectAll();
}
// Tab进入密码输入框时,自动全选密码
private void tb_Password_Enter(object sender, EventArgs e)
{
((TextBox)sender).SelectAll();
}
}
}