医学信息系统实验(不完整记录)

一、用户管理页面

1.窗体间数据传输

一、用户管理页面(Frmmain.cs)

  1. 用户管理:工具箱——菜单和工具栏——MenuStrip(有二级目录)
  2. 显示当前登录用户|登陆时间|系统时间:StatusStrip(同上)
  3. 登陆时间(静态):双击空白处进入代码区
private void Frmmain_Load(object sender, EventArgs e)
        {
   
            this.sllogintime.Text = DateTime.Now.ToString();    //静态时间显示;将前面内容转换成字符串
            timer1.Enabled = true;          

        }
  1. 系统时间(动态):
    组件——timer控件——属性
    闪电logo(事件):双击,进入
 private void timer1_Tick(object sender, EventArgs e)
        {
   
            this.slsystemtime.Text = DateTime.Now.ToString();   //动态时间,每秒触发 1000ms
        }
  1. 跨页面数据传输信息
  • 登录文本框内容——放入 用户管理页面( FORM1传给Frmmain页面)
    Form1页面:在Frmmain()中添加:txtusername.Text——Frmmain上右键——转到定义
 else if(user.logininfofind(txtusername.Text,txtpassward.Text,comflag.Text)==1)       //调用logininfofind验证身份是否正确或存在
            {
   
             Frmmain frn = new Frmmain(txtusername.Text);                                        //int a=new 用drmmian定义了frn 分配了构造函数new frmmain 类名和构造函数名相同
                                                                                                 // 类是用户自定义的 功能比结构体和联合体强大  可以包含方法函数
                frn.Show();                                                                      //无参函数 显示窗体
                this.Hide();                                                                     //对象指针 指向当前操作对象form1 hide隐藏
            }
  • frmmain页面:
    Frmmain添加赋值 sname = username;—— Frmmain_Load添加调用:this.slusername.Text = sname; ——class下 添加全局变量名字string sname;
 public partial class Frmmain : Form
    {
   
        string sname;  //++增加全局变量名字 从FORM1传递的
        public Frmmain(string username)
        {
   
            InitializeComponent();
            sname = username;           //当前登录的用户名,局部变量 //++赋值FORM1名字
        }

        private void Frmmain_Load(object sender, EventArgs e)
        {
   
            this.sllogintime.Text = DateTime.Now.ToString();    //静态时间显示;将前面内容转换成字符串
            timer1.Enabled = true;
            this.slusername.Text = sname;    //++调用FORM1名字

        }

请添加图片描述

2. 新建用户界面

1. 窗口设计 :新建Frmnewuser.cs窗体
  • 1.窗体text值+icon图标;
    2.label的text改变;
    3.textbox+combobox表格;
    4.清空:button1;text,name:btclear
    取消:button2;text,name:btch
    确定:button3;text,name:btok;
    5.txtusername/txtuserpwd/tetuserpwd2/?;(用户名、密码、重复密码、身份)
    items:结合 普通用户+管理员;
    Windowsstate :设置窗口最大化
2. 代码
  • Frmnewuser中:
//清空按钮
        private void btclear_Click(object sender, EventArgs e)
        {
   
            txtusername.Text = "";
            txtuserpwd.Text = "";
            txtuserpwd2.Text = "";
            comid.Text = "";
        }
 //取消按钮  Application.Exit();会直接退出界面  用this.Hide();当前隐藏 
        private void btch_Click(object sender, EventArgs e)
        {
   
            this.Hide();
        }
  • Classuser.cs类中(在Frmnewuser中newuser上右键转到定义)
//数据库连接放在开始,方便引用
        SqlConnection con = null;             //数据库连接
        SqlCommand cmd = null;                //执行sql操作
        SqlDataReader qlddr = null;         //sql执行结果存放缓冲区域
 #region     //新建用户的方法,对用户信息表的插入操作 insert
        public int newuser(string un, string up, string up2, int uid)    //返回值username userpasswd userid userflag
        {
   
            int flag = 0;               //初始行数为0,操作成功为1,只插入1行
            try
            {
   
                
                string s = "insert into Table_user values('" + un + "','" + up + "','" + up2 + "','" + uid + "')";
                getsql gc = new getsql();  //数据库连接
                con = gc.getcon();
                cmd = new SqlCommand(s, con);
                flag=cmd.ExecuteNonQuery();      //返回受影响的行数
                return flag;
            }
            catch (Exception ee)
            {
   
                MessageBox.Show(ee.ToString());
                return flag;
            }
        }
        #endregion
  • Frmnewuser中:
 //确定按钮
        private void btok_Click(object sender, EventArgs e)
        {
   
            Classuser user=new Classuser();
            if(txtusername.Text == "")            //判断用户名是否为空
            {
   
                MessageBox.Show("请输入用户名!", "ERROR", MessageBoxButtons.OKCancel, MessageBoxIcon.Warning, MessageBoxDefaultButton.Button2);
                return;
            }

            else if(txtuserpwd.Text == "")       //判断密码是否为空
            {
   
                MessageBox.Show("请输入密码!", "ERROR", MessageBoxButtons.OKCancel, MessageBoxIcon.Warning, MessageBoxDefaultButton.Button2);
                return;
            }
            else if(txtuserpwd2.Text == "")       //判断第二次密码是否为空
            {
   
                MessageBox.Show("请再次输入密码!", "ERROR", MessageBoxButtons.OKCancel, MessageBoxIcon.Warning, MessageBoxDefaultButton.Button2);
                return;
            }
             else if(txtuserpwd.Text!=txtuserpwd2.Text)      //判断两次输入的密码是否一致
            {
   
             MessageBox.Show("两次输入的密码不一致!请重新输入!", "ERROR", MessageBoxButtons.OKCancel, MessageBoxIcon.Warning, MessageBoxDefaultButton.Button2);
                return;
             }
             else if(comid.Text=="")      //判断身份是否为空
            {
   
             MessageBox.Show("请选择用户的身份!", "ERROR", MessageBoxButtons.OKCancel, MessageBoxIcon.Warning, MessageBoxDefaultButton.Button2);
                return;
             }
            else if (user.newuser(txtusername.Text,txtuserpwd.Text,comid.Text,1) == 1)    //新建用户,将用户信息插入到数据库对应的用户信息表中
              {
   
                  MessageBox.Show("新建用户成功!");
                  return;
              
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值