




已阅读5页,还剩36页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1 第十讲 用户登录窗体实例 2 一、GroupBox和Panel GroupBox(分组框)控件和Panel 控件用于为其 他控件提供组合容器,可以对控件进行分组。 GroupBox 控件类似于 Panel 控件,但GroupBox 控 件可以显示标题,而Panel 控件有滚动条。设计时当 移动单个 GroupBox 控件时,它包含的所有控件也将 一起移动。 放到Panel控件或GroupBox 控件内的所有对象 将随着容器的控件一起移动、显示、消失、和屏蔽。 3 面板panel 面板panel 4 Panel控件的常用属性: (1)BorderStyle属性 用于设置边框的样式。有三种设定值: none:无边框 Fix3D:立体边框 FixSingle:简单边框 默认值是none,不显示边框。 (2)AutoScroll属性:设置是否在框内加滚动 条。设置为true,则加滚动条,否则不加。 5 GroupBox控件的常用属性 GroupBox控件最常用的是text属性,可用于在 GroupBox控件的边框上设置显示的标题。 Panel控件与GroupBox控件有三个区别: Panel控件可以设置BorderStyle属性,选择是 否有边框。 Panel控件可以把其AutoScroll属性设置为 true,进行滚动。 Panel控件没有text属性,不能设置标题。 6 【例】创建一个 GroupBox 和一个 TextBox 控件。 向分组框中添加单选按钮,并将该分组框添加到 Form中。 private void InitializeMyGroupBox() / 创建一个 GroupBox 和一个TextBox GroupBox groupBox1 = new GroupBox(); TextBox textbox1 = new TextBox(); / 设置 GroupBox的样式 groupBox1.FlatStyle = FlatStyle.System; 7 /添加 TextBox到 GroupBox. groupBox1.Controls.Add(textbox1); / 添加GroupBox 到窗体 Controls.Add(groupBox1); 运行结果如图所示。 8 二、用户登录窗体的功能和用户界面 在这个窗体中,用户输入用户名和密码 后,查询数据库 userinfo的用户信息表中 是否存在这样的用户,检查用户的合法性。 用户界面如下图。 9 三、用户登录窗体的设计步骤 创建Windows应用程序项目,项目名称为“用户登录窗体实例”。 向窗体中加入1个GroupBox控件,控件名为groupBox1。该控件 用来使输入区的控件成组,此处主要提高界面的视觉效果。 向控件groupBox1中加入2个Label控件,控件名为 label1和 label2。这两个控件用来指示用户输入的数据项的名称。 向控件groupBox1中加入2个TextBox控件,控件名为 UserID和 Passwd。这两个控件用来接受用户输入。 向窗体中加入2个Button控件,控件名为 buttonLogin和 buttonCancle。这两个控件用来启动“登录”和“取消”功能。 10 四、用户登录主要程序代码-未涉及数据库 private void button1_Click(object sender, EventArgs e) if (userid.text=“”|passwd.text=“”) MessageBox.show(“请输入用户名和密码”); else if (userid.text=“admin” else MessageBox.show(“用户名或者密码错误”); 11 五、用户登录主要程序代码-涉及数据库 private void button1_Click(object sender, EventArgs e) if (userid.text=“”|passwd.text=“”) MessageBox.show(“请输入用户名和密码”); else 根据userid.text和passwd.text去数据库中查询,查看是否存在 相应的用户名和密码; if (数据库中有此记录) MessageBox.show(“你可以登录到本系统”); else MessageBox.show(“用户名或者密码错误”); 12 13 1、连接数 据库 数据库 2、通过sql语句找数据 账号:admin 密码:admin 可以登录 14 六、Access数据库操作步骤 C#中对数据库操作的主要步骤如下: 引入命名空间:using System.Data.OleDb; 连接数据库 执行SQL语句 从数据库中读取筛选的数据,并与文本框中的数据 进行对比 关闭数据库 连接并打 开数据库 在数据库中 执行SQL语句 读取数据, 并进行对比 关闭数据库 OleDbConnectionOleDbCommandOleDbDataReader OleDbConnection 对象 的Close方法 15 Connection类主要功能是建立与数据 库的物理连接; access数据库一般使用 OleDbConnection;而SQLSERVER数据 库一般使用SQLConnection。 一般调用OleDbConnection或者 SQLConnection对象的OPEN方法来打开 数据库。 1)、OleDbConnection 16 Command类主要功能向数据库发送查询( select)、更新(update)、删除(delete)、添 加(insert)操作的SQL语句。 access数据库一般使用OleDbCommand; 而SQLSERVER数据库一般使用SQLCommand 。 一般需要设置 OleDbCommand或者 SQLCommand对象的三个属性: Connection ; CommandType; CommandText; 2)、OleDbCommand 17 DataReader类主要是用于从数据库中快 速的读取数据,而不能修改数据。 使用OleDbDataReader或者SQL DataReader读取数据的时候,一般需要使用 OleDbCommand或者SQLCommand对象的一 个ExecuteReader()方法,将该方法执行SQL 语句的结果赋给OleDbDataReader对象或者 SQL DataReader对象。 3)、OleDbDataReader 18 OleDbDataReader对象或者SQLDataReader 对象的HasRows属性获取一个值,该值说明 OleDbDataReader对象( SQLDataReader ) 是否包含一行或者多行,即判断查询结果中 是否有值。 如果OleDbDataReader对象包含一行或多行 ,则为true,否则为false。 19 OleDbConnection cn = new OleDbConnection(strcon); cn.open(); cn.close(); 4)、OleDbConnection对象 的Close方法 20 第一步:连接数据库 构造连连接数据库库的字符串: string strcon = “Jet OLEDB:Engine Type=5;Provider=Microsoft.Jet.OLEDB.4.0;Dat a Source=student.mdb“; 或者: string strcon=“Jet OLEDB:Engine Type=5; Provider=Microsoft.Jet.OLEDB.4.0; Data Source=“+“student.mdb“; 七、Access数据库操作实践 第一步: 连接并打 开数据库 21 使用OleDbConnection创建数据库的连接cn: OleDbConnection cn = new OleDbConnection(strcon); 打开连接:cn.open(); 第一大步结束。 22 第二步:执行SQL语句 使用OleDbCommand创建对象cmd: OleDbCommand cmd = new OleDbCommand(); 设置要执行的SQL语句字符串: string sqlstr=“select/insert/update/delete.”; 设置 cmd对象的三个属性: cmd.Connection = cn; cmd.CommandText =sqlstr; cmd.CommandType = CommandType.Text; 第一步中创 建的连接 第二步:在数据 库中执行SQL语句 23 调用cmd对象的ExecuteReader()方法执行SQL语句,并赋值 给类OleDbDataReader的对象 SDR: OleDbDataReader SDR = cmd.ExecuteReader(); 第二大步结束。 24 第三步:读取SQL语句选择的数据 读取下一条记录:SDR.Read(); 判断是否读取到数据,如果能读取到数据说明数据库里面存 在相应的用户名和密码,否则说明数据库里面没有: if (SDR.HasRows=true) this.hide(); /隐藏登录窗口 Form1 frm1 = new Form1(); /创建并打开主界面 frm1.Show(); else MessageBox.Show(“用户名或密码错误“, “登录失败“); 第四步:关闭数据库连接:cn.Close(); 第三步:读取因执行 SQL语句而得到的数据 25 主要过程简述如下: 构造连接数据库的字符串 使用OleDbConnection创建数据库的连接cn; 打开连接:cn.open(); 使用OleDbCommand创建对象cmd,执行SQL语句; ucmd的Connection属性设设置为为cn; u将要执执行的sql语语句赋给赋给 cmd的CommandText属性; u将CommandType.Text赋值给赋值给 cmd的CommandType属性 ; 调用cmd的ExecuteReader()方法,读取数据库数据并赋值给 OleDbDataReader的对象: OleDbDataReader SDR = cmd.ExecuteReader(); 26 SDR.read(); 读取数据以后进行判断: if (SDR.HasRows=true) this.hide(); /隐藏登录窗口 Form1 frm1 = new Form1(); /创建并打开主界面 frm1.Show(); else MessageBox.Show(“用户名或密码错误“, “登录失败“); 关闭数据库连接:cn.Close(); 27 完整代码: using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Runtime.InteropServices; using System.Windows.Forms; using System.Data.OleDb; namespace WindowsApplication1 public partial class Form1 : Form 28 public Form1() InitializeComponent(); private void button1_Click(object sender, EventArgs e) if (userid.Text.Trim() = “ | passwd.Text.Trim() = “) MessageBox.Show(“请输入用户名及密码“, “登录失败“); else /连接字符串 string strcon = “Jet OLEDB:Engine Type=5;Provider=Microsoft.Jet.OLEDB.4.0;Data Source=student.mdb“; /创建数据库的连接 public OleDbConnection cn = new OleDbConnection(strcon); 29 cn.Open(); /打开连接 /创建执行命令对象cmd OleDbCommand cmd = new OleDbCommand(); /设置要执行的sql语句sqlstr string sqlstr = “select * from userinfo where UserName=“ + userid.Text.Trim() + “ and Paswd=“ + passwd.Text.Trim() + “; /设置cmd对象的三个属性 cmd.Connection = cn; cmd.CommandText =sqlstr; cmd.CommandType = CommandType.Text; /读取数据并赋值给OleDbDataReader对象 SDR OleDbDataReader SDR = cmd.ExecuteReader(); SDR.Read() 30 if (SDR.HasRows) /读取到数据说明存在该用户,可以登录 this.hide(); /隐藏登录窗口 Form1 frm1 = new Form1(); /创建并打开主界面 frm1.Show(); else /否则用户不存在 MessageBox.Show(“用户名或密码错误“, “登录失败“); cn.Close(); 31 八、登陆后如何正确弹出主窗体 Program.cs 中应该书写的代码如下: login s = new login(); s.ShowDialog(); if (s.DialogResult = DialogResult.OK) Application.Run(new Form1(); else Application.Exit(); 32 登录窗体中 正确登录后 应该书写的代码: this.DialogResult = DialogResult.OK; this.Close(); 33 知识点回顾:SQL语句的编写 对数据库的操作一般有查询记录、更新(修改)记录、 删除记录、插入记录。 查询记录-select语句 更新记录-update语句 删除记录-delete语句 插入记录-insert 语句 四种SQL语句 34 常见的SQL语句如下所示: 1、选择语句: 例如: select 学号,姓名 from STU1 where 数学=90 select * from STU1 where 姓名=刘佳 select 学号,姓名 from STU1 where 姓名=楚留香 35 2 、 INSERT命令(插入命令) 格式:INSERT INTO (属性列表) VALUE (数据表) 功能:插入一条新记录。 如:insert into STU1 (学号,姓名,计算机基础,数学,马列原理, 体育,总分,平均分)values (962105, 李小丽,77,88,90,80.2) 36 3 、 UPDATE命令(更新命令) 格式:UPDATE SET WHERE 例如:update STU2 set 就读方式统招 where 姓名=孙力 37 4 、 DELETE命令(删除命令) 格式:DELETE FROM 表文件名 WHERE 表达式 如:delete from STU2 where 性别= 女 38 如何将SQL语句转换为字符串类型? 如:delete fr
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年环保行业绿色环保技术应用前景研究报告
- 嵊泗县2025浙江舟山市嵊泗县事业单位紧缺专业人才招聘15人笔试历年参考题库附带答案详解
- 山东省2025年山东聊城经济技术开发区事业单位公开招聘教师(16人)笔试历年参考题库附带答案详解
- 姚安县2025云南楚雄州姚安县农业农村局农业紧缺专业技术人才招聘4人笔试历年参考题库附带答案详解
- 呼伦贝尔市2025内蒙古呼伦贝尔市陈巴尔虎旗“就在北疆”“职引未来”高校毕业生退役笔试历年参考题库附带答案详解
- 南昌市2025江西南昌市劳动保障事务代理中心招聘劳务派遣人员1人笔试历年参考题库附带答案详解
- 云南省2025云南文山州丘北县事业单位紧缺岗位第二次招聘(7人)笔试历年参考题库附带答案详解
- 上海市2025上海华东师范大学法学院财务秘书招聘1人笔试历年参考题库附带答案详解
- 2025重庆机电控股集团机电工程技术有限公司招聘市场营销安全员等岗位共11人笔试参考题库附带答案详解
- 卸车工安全培训课件
- 农业现代化种植技术培训课件
- 中城汽车(山东)有限公司审计报告
- 大学博士竞赛试题及答案
- 钢结构彩钢瓦施工工艺与技术交底
- 2025版煤矿安全规程宣贯培训课件
- 梁启超家教家风课件
- DB31∕T 1545-2025 卫生健康数据分类分级要求
- 大学生创新创业基础(创新创业课程)完整全套教学课件
- 初中毕业证在哪里查询
- 名词语法讲解
- GB/T 5796.4-2022梯形螺纹第4部分:公差
评论
0/150
提交评论