| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 596 人关注过本帖
标题:求教一个登陆窗口按回车会再次加载窗体
只看楼主 加入收藏
wxflw
Rank: 6Rank: 6
等 级:侠之大者
帖 子:324
专家分:435
注 册:2012-1-29
结帖率:88.24%
收藏
已结贴  问题点数:20 回复次数:5 
求教一个登陆窗口按回车会再次加载窗体
为什么我按回车登陆成功后,再次按回车会再次打开这个登陆窗口?
就是show出窗口form7或form3后点击form7或form3中任何一个按钮都会再次打开登录窗口,是不是标准模块变量出问题了?
标准模块就只有这一句:Public cksl As Long
form3或form7窗口中就这么一句:
Private Sub Command1_Click()
cksl = cksl - 2
Form2.Show
Unload Me
End Sub

登录窗口
代码如下:
'cksl是一个模块公共变量,其他窗口也有用到
Option Explicit
Dim dlcs As Integer '尝试登陆次数
Private Sub Command2_Click() '退出
    cksl = cksl - 2 '窗口数量-2
    Unload Me
End Sub
-----------------------------------------------------------
Private Sub Command1_Click() '登陆
    If Me.Text1 = "" Then
        MsgBox "用户名不能为空!", vbCritical, Me.Caption
        Me.Text1.SetFocus
     Exit Sub
    ElseIf Me.Text2 = "" Then
        MsgBox "请填写密码!", vbCritical, Me.Caption
        Me.Text2.SetFocus
    Exit Sub
    End If
    = adCmdText
    Adodc1.RecordSource = "select * from [user] where  用户名 = '" & Trim(Text1.Text) & "' "
    Adodc1.Refresh
    If Adodc1.Recordset.RecordCount = 0 Then
        MsgBox "用户名或密码错误!", vbInformation, Me.Caption
        GoTo ExitSub
    End If
    If Adodc1.Recordset.Fields("密码") <> Text2.Text Then
        MsgBox "用户名或密码错误!", vbInformation, Me.Caption
         GoTo ExitSub
    End If
    If Adodc1.Recordset.Fields("权限") = "业务员" Then
        Unload Me
        Form7.Show
        ElseIf Adodc1.Recordset.Fields("权限") = "管理员" Then
        Unload Me
        Form3.Show
    End If
ExitSub:
    dlcs = dlcs + 1 '登陆次数+1
    If dlcs = 4 Then
        MsgBox "请与管理员联系!", vbInformation, Me.Caption
        Unload Me
    End If
End Sub
------------------------------------------------------

Private Sub Form_Load()
Text1.Text = ""
Text2.Text = ""
cksl = 2
    dlcs = 0
    Show
    Me.Text1.SetFocus
End Sub
---------------------------------------------
Private Sub Text1_KeyUp(KeyCode As Integer, Shift As Integer) '按回车
    If KeyCode = 13 Then
    Text2.SetFocus
    End If
End Sub
--------------------------------------------------------
Private Sub Text2_KeyUp(KeyCode As Integer, Shift As Integer) '按回车
    If KeyCode = 13 Then
    Call Command1_Click
    End If
End Sub
---------------------------------------------------------
Private Sub Text1_KeyPress(KeyAscii As Integer) '消除按回车的声音
If KeyAscii = 13 Then
KeyAscii = 0
End If
End Sub
---------------------------------------------------------
Private Sub Text2_KeyPress(KeyAscii As Integer) '消除按回车的声音
If KeyAscii = 13 Then
KeyAscii = 0
End If
End Sub


[ 本帖最后由 wxflw 于 2012-4-17 20:44 编辑 ]
搜索更多相关主题的帖子: 其他 
2012-04-17 20:14
Artless
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:103
帖 子:4211
专家分:28888
注 册:2009-4-8
收藏
得分:14 
Form2.Show

无知
2012-04-17 23:24
wxflw
Rank: 6Rank: 6
等 级:侠之大者
帖 子:324
专家分:435
注 册:2012-1-29
收藏
得分:0 
版主,啥意思?指点下,登录窗口是form1

[ 本帖最后由 wxflw 于 2012-4-18 08:54 编辑 ]

学习--------------学习-------------------学习--------------------!!
2012-04-18 08:52
wxflw
Rank: 6Rank: 6
等 级:侠之大者
帖 子:324
专家分:435
注 册:2012-1-29
收藏
得分:0 
找到原因了!!是我糊涂了
我在窗体退出用了call,如下
Private Sub Form_Unload(Cancel As Integer)
Call Command1_Click
End Sub
但是在command1中有个show。form1的句子没注意~~~~~~谢谢关注!

学习--------------学习-------------------学习--------------------!!
2012-04-18 09:10
a15515354572
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2012-11-25
收藏
得分:0 
能把这个程序给我发下吗? 不是学习用的,纯粹喜欢vb自己做的,我想看看这个怎么写
2012-11-25 12:56
a15515354572
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2012-11-25
收藏
得分:0 
  噢,对了 我的邮箱593460777@
2012-11-25 12:56
快速回复:求教一个登陆窗口按回车会再次加载窗体
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.019039 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved