您的位置:首页 > 编程语言 > VB

[VB.NET]登陆窗口登陆成功后的ID值如何取出来....

2008-12-29 22:47 309 查看



<script type="text/javascript"><!--
google_ad_client = "pub-8333940862668978";
/* 728x90, 创建于 08-11-30 */
google_ad_slot = "4485230109";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>

登陆窗口登陆成功后的ID值如何取出来....
Public UserName As String =
Public UserId As String =

Public Shared Sub Main()
显示登陆对话框
Dim loginFrm As frmLogin = New frmLogin
loginFrm.ShowDialog()
合法用户进入系统
If loginFrm.bResult = True Then
Dim frm As frmMain = New frmMain
frm.UserName = loginFrm.UserName
frm.UserId = loginFrm.UserId
Application.Run(frm)
End If
Application.Run(New frmMain)
End Sub

Private Sub SetRight(ByVal sUserId As String)
If sUserId = 1 Then
MenuItemGoodsInfo.Enabled = True
MenuItemSupplyInfo.Enabled = True
MenuItemClientInfo.Enabled = True
MenuItemOrderList.Enabled = True
MenuItemSellList.Enabled = True
MenuItemDepotSearch.Enabled = True
MenuItemManageRight.Enabled = True
End If
Dim db As DataBase = New DataBase
根据当前登陆用户从数据库查询他的权限
Dim strSQL As String = SELECT 用户编号, 权限名称
strSQL += FROM 权限清单 where 用户编号= + sUserId +
Dim dvRight As DataView = db.RunSelectSQL(strSQL)
Dim i As Integer
Dim sRight As String
根据当前登陆用户权限设置菜单项是否可用
For i = 0 To dvRight.Count - 1
sRight = dvRight(i)( 权限名称 )
sRight = sRight.Trim()
If sRight = MenuItemGoodsInfo.Text.Trim() Then
MenuItemGoodsInfo.Enabled = True
ElseIf sRight = MenuItemSupplyInfo.Text.Trim() Then
MenuItemSupplyInfo.Enabled = True
ElseIf sRight = MenuItemClientInfo.Text.Trim() Then
MenuItemClientInfo.Enabled = True
ElseIf sRight = MenuItemOrderList.Text.Trim() Then
MenuItemOrderList.Enabled = True
ElseIf sRight = MenuItemSellList.Text.Trim() Then
MenuItemSellList.Enabled = True
ElseIf sRight = MenuItemDepotSearch.Text.Trim() Then
MenuItemDepotSearch.Enabled = True
ElseIf sRight = MenuItemManageRight.Text.Trim() Then
MenuItemManageRight.Enabled = True
End If
Next
db.Dispose()
End Sub

Private Sub frmMain_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
根据登陆用户的ID设置菜单
Me.SetRight(Me.UserId)
End Sub
__________________________________________________________________________
好象没取出来,因为除了 1 以外的ID都是灰色菜单....
__________________________________________________________________________
我也觉得奇怪,登陆时设个全局变量很困难一样。
__________________________________________________________________________
你也这个问题?
__________________________________________________________________________
我顶~~~
__________________________________________________________________________
我也在弄权限设定,不会写代码,帮楼上的顶,楼上的解决了话发我一份参考下
__________________________________________________________________________
取个值咋就这么难.....
__________________________________________________________________________
我继续顶
__________________________________________________________________________
还顶,帮忙啊~~~~~
__________________________________________________________________________
帮你顶
__________________________________________________________________________
你试一下在frmMain中写个窗体重载,然后通过这个重载过程来传递ID值等参数。
__________________________________________________________________________
调整下思路,新增个模块文件,在里面申明个全局变量UserId,里面创建过程
Public Sub Main()
在过程里写登录代码,在登录窗口中记录登录的用户ID,并用变量记录客户是选择确定,还是取消操作。
判断客户选择的操作,如果是取消操作,则退出系统,如果是确定操作,则根据用户ID设置权限。

最后修改工程的启动对象为Sub Main
__________________________________________________________________________
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息