zoukankan      html  css  js  c++  java
  • C# 窗体(登录界面)

    首先拖动一个  lable(写用户名)  后面 跟一个Textbox

    lable(写密码) 后面 跟一个Textbox(需设置一下属性行为useSystemPasswordChar(默认输入的密码为黑点))

    再加Button 按钮(text 登录)    

    如下图:

    1、属性——杂项(AcceptButton设置成Button1)就可以按回车显示下一个页面

    2、传值:Login.cs[设计] 传到 Main.cs[设计] 里一个值     用构造方法:1、在Main.cs[设计] 里拖一个Lable来准备接收

    再在Main.cs里重载一个方法:

    再在Login.cs里来接收:——造主窗体对象时   Main m=new Main(uid)

    双击登录 加一个事件:

    数据操作类如下:

    public partial class Login : Form
    {
    public string username;
    public Login()
    {
    InitializeComponent();
    }

    private void button1_Click(object sender, EventArgs e)
    {
    先取出用户名 密码
    定义变量取到用户名、密码
    string uid= textuid.Text;
    string pwd= textpwd.Text;
    再判断uid是不是空的
    if (uid != "" && pwd != "")
    {
    都不为空时再来判断 uid pwd 是不是匹配
    操作数据库 做三个类

    LoginDA da = new LoginDA();          调用方法前先造一个对象
    da.Denglu(uid,pwd);                      调用第三个类里的方法,传两个参数过来
    if (da.Denglu(uid, pwd))                 判断
    {

    登录之后,关闭登录页面,只显示Main页面,Main成为主窗体
    将用户名赋值给成员变量username
    username = uid;
    将该窗体的返回值变为OK                                 三步
    this.DialogResult = DialogResult.OK;
    //将该窗体关闭
    this.Close();
    }
    else
    {
    MessageBox.Show("用户名或密码错误!");
    }

    }


    else

    //如果是空
    MessageBox.Show("用户名和密码不能为空!");
    }

    }

    需改动:program.cs

    下拉列表:

    public partial class Main : Form
    {

    private ZgDA cda;
    public Main()
    {
    InitializeComponent();
    }
    public Main(string username)//重载了一个Main方法

    InitializeComponent();

    cda = new ZgDA(); 

    }

    private void label1_Click(object sender, EventArgs e)
    {

    }

    private void Main_Load(object sender, EventArgs e)
    {

    填充省的下拉列表
    Fillsheng();
    填充市的下拉列表
    Fillshi();
    填充区的下拉列表
    Fillqu();
    }

    private void cmbsheng_SelectedIndexChanged(object sender, EventArgs e)

    {
    填充市的下拉列表
    Fillshi();

    }

    private void cmbshi_SelectedIndexChanged(object sender, EventArgs e)
    {
    填充区的下拉列表
    Fillqu();
    }
    public void Fillsheng()//填充省的方法
    {
    List<Zg> List= cda.select("0001");              根据父级代号查到该父级下所有的子集的集合
    cmbsheng.DataSource = List;                     把查到的集合交给省的下拉作为数据源
    cmbsheng.DisplayMember = "Name";             显示民族名称
    cmbsheng.ValueMember = "Code";                后台值是民族代号
    }
    public void Fillshi()                                   填充市的方法
    {
    List<Zg> List = cda.select(cmbsheng.SelectedValue.ToString());选中哪个省就取到哪个省的代号
    cmbshi.DataSource = List;                          把查到的集合交给市的下拉作为数据源
    cmbshi.DisplayMember = "Name";                  显示民族名称
    cmbshi.ValueMember = "Code";                    后台值是民族代号
    }
    public void Fillqu()//填充市的方法
    {
    List<Zg> List = cda.select(cmbshi.SelectedValue.ToString());   选中哪个省就取到哪个省的代号
    cmbqu.DataSource = List;                         把查到的集合交给市的下拉作为数据源
    cmbqu.DisplayMember = "Name";                显示民族名称
    cmbqu.ValueMember = "Code";                  后台值是民族代号
    }
    }
    }

  • 相关阅读:
    setlocale
    c++的 程序实体 作用域 名空间 变量生存期概念理解
    本人的Ubuntu 10.04配置清单
    hadoopStreamming 编程 Angels
    级联 mapreduce (Cascading Mapreduce) Angels
    委托
    OPC和XML/SOAP/Web Services
    实例管理2(会话服务)
    实例管理3()
    操作(Operation)
  • 原文地址:https://www.cnblogs.com/zzzy0828/p/5810132.html
Copyright © 2011-2022 走看看