`
sunqing0316
  • 浏览: 37349 次
  • 性别: Icon_minigender_2
文章分类
社区版块
存档分类
最新评论

用select case实现用户分级别登录

 
阅读更多

在敲机房收费系统的时候,我没有像大部分同学一样先敲登录窗体,因为当时就觉得无从下手,不知道该怎么做。大家都说定义一个公有变量,然后在登录的时候进行判断。于是,我有了这样一个模糊的概念。但是,直到昨天,我依然没有着手敲这个窗体,因为总是觉得太麻烦了。

今天突然觉得自己可以敲了,然后,就敲出来了,自我感觉没那么复杂。下面就来看看我是怎么实现的吧。

我没有按照原系统的登录窗体的界面来设计,而是加了一个combobox控件,运行后界面是这样的效果:

在登录的时候直接进行用户级别的选择。然后,根据用户级别来判断在所选级别之下是否有我所输入的用户名,假如没有的话,就会弹出相应的提示:

然后在登录窗体中定义了两个变量L和U,L用来存放登录用户的级别,U用来存放登录的用户名。

在frmMain加载的时候,就可以根据存放登录用户级别的变量来判断窗体加载的用户权限,假如是一般用户登录的话,加载的窗体就只有“一般用户”权限,其他两个(操作员和管理员)动态隐藏,即visible属性为false。

判断用户级别的时候我用的是select case语句。

PrivateSub Form_Load()

Select Case frmlogin.L

Case "管理员"

frmMain.Show

Case "操作员"

frmMain.Manager.Visible = False

Case "一般用户"

frmMain.Operator.Visible = False

frmMain.Manager.Visible = False

End Select

这样就实现了用户分级别登录。

作者信息

分享到:
评论

相关推荐

    oracle学习文档 笔记 全面 深刻 详细 通俗易懂 doc word格式 清晰 连接字符串

    说明:用于连接到oracle数据库,也可实现用户的切换 用法:conn 用户名/密码 [as sysdba/sysoper] 注意:当用特权用户连接时,必须带上sysdba或sysoper 例子: 3. 断开连接(disc) 说明:断开与当前数据库的连接 ...

    精通sql结构化查询语句

    10.3.2 使用EXISTS子查询实现两表交集 10.3.3 使用EXISTS子查询实现两表并集 10.3.4 使用NOT EXISTS的子查询 10.4 相关子查询 10.4.1 使用IN引入相关子查询 10.4.2 使用比较运算符引入相关子查询 10.4.3 在HAVING...

    VB课程设计俄罗斯方块

    则消除这行的方块,并且使上面的方块自由下落,其中,方块向下的速度是有时钟控件控制的,在游戏中,用户也可以使用向下键加快下落速度,定义一个变量,对消除的函数进行记录,最后就可以得出用户的分数,用if 语句...

    Firebird数据库中文版

    使用PSQL(Procedure SQL),你可以创建强大的存储过程来处理服务上的所有数据,你可以使用select Stored Procedure的形式,使用存储过程,以得到一个虚拟的表结构的结果。这样的话,你就可以很容易的在报表中使用它。 ...

    精通SQL 结构化查询语言详解

    《精通SQ:结构化查询语言详解》全面讲解SQL语言,提供317个典型应用,读者可以随查随用,针对SQL Server和Oracle进行讲解,很有代表性。 全书共包括大小实例317个,突出了速学速查的特色。《精通SQ:结构化查询语言...

    SQL Server 2008编程入门经典(第3版)

    6.8 用于实现数据完整性的触发器 6.9 如何选择 6.1 0本章小结 第7章 更复杂的查询 7.1 子查询的概念 7.2 关联子查询 7.2.1 关联子查询的工作原理 7.2.2 在WHERE子句中的关联子查询 7.2.3 处理NULL数据——ISNULL...

    精通SQL--结构化查询语言详解

    7.3.4 使用case表达式 124 7.4 函数 126 7.4.1 有关函数的说明 126 7.4.2 字符处理函数 126 7.4.3 算术运算函数 131 7.4.4 日期时间函数 133 7.4.5 convert()函数转换日期、时间 136 第8章 聚合分析与分组 ...

    C#编程经验技巧宝典

    16 <br>0033 Return语句的使用 17 <br>0034 如何实现无限循环 17 <br>0035 巧用foreach语句控制控件 18 <br>0036 有效使用switch case语句 18 <br>2.3 运算符 19 <br>0037 如何使用...

    SQL.Server.2008编程入门经典(第3版).part1.rar

    《SQL Server 2008编程入门经典(第3版)》首先概述了数据库设计的概念,介绍了如何用SQL Setver 2008实现这些基本概念。然后,讲述了RDBMS(关系数据库管理系统)的功能和它在开发系统架构方面的优势。SQL Server ...

    SQL.Server.2008编程入门经典(第3版).part2.rar

    《SQL Server 2008编程入门经典(第3版)》首先概述了数据库设计的概念,介绍了如何用SQL Setver 2008实现这些基本概念。然后,讲述了RDBMS(关系数据库管理系统)的功能和它在开发系统架构方面的优势。SQL Server ...

    Oracle_Database_11g完全参考手册.part3/3

    第16章 DECODE和CASE.SQL中的if-fhen-else 第17章 创建和管理表、视图、索引、群集和序列 第18章 分区 第19章 Oracle基本安全 第Ⅲ部分 高级主题 第20章 高级安全性-虚拟专用数据库 第21章 高级安全性:透明数据加密...

    Oracle_Database_11g完全参考手册.part2/3

    第16章 DECODE和CASE.SQL中的if-fhen-else 第17章 创建和管理表、视图、索引、群集和序列 第18章 分区 第19章 Oracle基本安全 第Ⅲ部分 高级主题 第20章 高级安全性-虚拟专用数据库 第21章 高级安全性:透明数据加密...

    【。net 专业】 面试题

    比如登陆可能在多个页面上有,就可以做成用户控件,但是有一个问题就是用户控件拖到不同级别的目录下后里面的图片等的相对路径会变得不准确,需要自已写方法调整. 3.什么叫应用程序域?什么是受管制的代码?什么是强...

    mysql数据库my.cnf配置文件

    # MyISAM设置恢复表之时使用的缓冲区的尺寸,当在REPAIR TABLE或用CREATE INDEX创建索引或ALTER TABLE过程中排序 MyISAM索引分配的缓冲区 myisam_max_sort_file_size = 10G # 如果临时文件会变得超过索引,不要使用...

    C#全能速查宝典

    2.2.16 MaskedTextBox控件——使用掩码区分用户输入 166 2.2.17 Multiline属性——是否为多行输入数据 169 2.2.18 PasswordChar属性——取代用户输入而显示的字符 170 2.2.19 Redo方法——重新应用控件中上次撤销的...

    ASP.NET常用代码

    不要使用Response.Redirect,而应该使用Server.Transfer e.g // in global.asax protected void Application_Error(Object sender, EventArgs e) { if (Server.GetLastError() is HttpUnhandledException) Server....

    ASP.NET程序中常用的三十三种代码.txt

     不要使用Response.Redirect,而应该使用Server.Transfer  e.g // in global.asax protected void Application_Error(Object sender, EventArgs e) { if (Server.GetLastError() is HttpUnhandledException) Server...

Global site tag (gtag.js) - Google Analytics