| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1325 人关注过本帖, 1 人收藏
标题:高手看下这段登录窗口的源码,哪里出错了?
只看楼主 加入收藏
mmjun1001
Rank: 1
等 级:新手上路
帖 子:25
专家分:0
注 册:2010-7-30
结帖率:50%
收藏(1)
已结贴  问题点数:5 回复次数:10 
高手看下这段登录窗口的源码,哪里出错了?
Private Sub Command1_Click()
Static micount As Integer
Dim sqlstr As String
sqlstr = "select * from登录where用户名= '" & Text1 & "'"
Adodc1.RecordSource = sqlstr
Adodc1.Refresh
If Adodc1.Recordset.BOF Then
   MsgBox "用户名错误,重新输入", vbExclamation, "警告"
   Text1 = ""
   Text1.SetFocus
Else
If Adodc1.Recordset.Fields("密码") = Text2 Then
form2.Show
Unload Me
Else
MsgBox "密码错误,重新输入", vbExclamation, "警告"
Text2.Text = ""
Text2.SetFocus
End If
End If
micount = micount + 1
If micount = 3 Then Unload Me
End Sub

Private Sub Command2_Click()
Unload Me
End Sub
搜索更多相关主题的帖子: 登录 窗口 源码 
2010-07-30 14:23
frank_tao78
Rank: 3Rank: 3
等 级:论坛游侠
威 望:1
帖 子:69
专家分:143
注 册:2010-1-11
收藏
得分:1 
一、sqlstr = "select * from登录where用户名= '" & Text1.text & "'"
二、micount初值在Form_load的时候赋予0,定义micount为全局变量。
2010-07-30 15:05
风吹过b
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:364
帖 子:4947
专家分:30084
注 册:2008-10-15
收藏
得分:1 
没看到有什么错误...

你运行时有什么错误提示????

------------------------------
回2楼.
1\
VB6 的控件都有一个默认属性,当直接引用 控件名 时,而没有写属性时, VB6会把它当作 引用默认属性处理.
所以 & text1 & 与 & text1.text & 效果等价,但编程时,建议按后面那种写.

2\他是使用了 Static 关键字定义变量, 这种定义的变量是定义在数据段中,而不是堆栈中,也就是 静态变量 ,全局变量 ,都是静态变量
例外的是,固定大小的数组,定长字符串,,整个是留好内存占用. 动态数组, 变长字符串外,都是在数据段中存储指针,然后对指针进行操作的.数据区在堆中,
但因为指针在数据段中,所以也被认为是静态的变量.
在这里,因为是申明的静态变量,并且是在过程中申明的,那么 micount 值在整个程序运行过程中,均能得到保持.只是作用域的问题.
因为是在过程中申明的,所以它只能在这个过程中被访问.当然,如果你用汇编级调试时,那是可以达到全局访问的.

VB6中,变量没有赋值时,有一个默认值,数值型的为 0 ,字符串 的为 空串 ,变体为 Empty

授人于鱼,不如授人于渔
早已停用QQ了
2010-07-30 15:52
mmjun1001
Rank: 1
等 级:新手上路
帖 子:25
专家分:0
注 册:2010-7-30
收藏
得分:0 
谢谢以上两位的答复,运行中出现的问题是 用户名,密码为空时,按command1按钮[microsoft][odbc sql server driver][sql server]在关键字'select'附近有语法错误,对象refesh的方法iadodc失败
2010-07-30 16:22
longerth
Rank: 3Rank: 3
等 级:论坛游侠
威 望:7
帖 子:739
专家分:193
注 册:2007-7-21
收藏
得分:1 
sqlstr = "select * from登录where用户名= '" & Text1 & "'"

应该是 sqlstr = "select * from 登录 where 用户名= '" & Text1 & "'"
注意空格

工作不能太累,生活不能无味,人生就是这样多姿多彩。呵呵,其实世界很美好,关键就是你有没有发现。

2010-07-30 16:26
风吹过b
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:364
帖 子:4947
专家分:30084
注 册:2008-10-15
收藏
得分:0 
按错误提示,就是SQL 命令错了。 估计是楼上的 说的内容了。

授人于鱼,不如授人于渔
早已停用QQ了
2010-07-30 20:43
frank_tao78
Rank: 3Rank: 3
等 级:论坛游侠
威 望:1
帖 子:69
专家分:143
注 册:2010-1-11
收藏
得分:0 
所以我调试的时候没提示有错误。。。
谢谢风老大
2010-08-01 15:46
mmjun1001
Rank: 1
等 级:新手上路
帖 子:25
专家分:0
注 册:2010-7-30
收藏
得分:0 
以下是引用frank_tao78在2010-7-30 15:05:14的发言:

一、sqlstr = "select * from登录where用户名= '" & Text1.text & "'"
二、micount初值在Form_load的时候赋予0,定义micount为全局变量。
还是不行,运行中出现的问题是 用户名,密码为空时,按command1按钮[microsoft][odbc sql server driver][sql server]在关键字'select'附近有语法错误,对象refesh的方法iadodc失败
2010-08-05 17:21
mmjun1001
Rank: 1
等 级:新手上路
帖 子:25
专家分:0
注 册:2010-7-30
收藏
得分:0 
以下是引用风吹过b在2010-7-30 15:52:57的发言:

没看到有什么错误...

你运行时有什么错误提示????

------------------------------
回2楼.
1\
VB6 的控件都有一个默认属性,当直接引用 控件名 时,而没有写属性时, VB6会把它当作 引用默认属性处理.
所以 & text1 & 与 & text1.text & 效果等价,但编程时,建议按后面那种写.

2\他是使用了 Static 关键字定义变量, 这种定义的变量是定义在数据段中,而不是堆栈中,也就是 静态变量 ,全局变量 ,都是静态变量
例外的是,固定大小的数组,定长字符串,,整个是留好内存占用. 动态数组, 变长字符串外,都是在数据段中存储指针,然后对指针进行操作的.数据区在堆中,
但因为指针在数据段中,所以也被认为是静态的变量.
在这里,因为是申明的静态变量,并且是在过程中申明的,那么 micount 值在整个程序运行过程中,均能得到保持.只是作用域的问题.
因为是在过程中申明的,所以它只能在这个过程中被访问.当然,如果你用汇编级调试时,那是可以达到全局访问的.

VB6中,变量没有赋值时,有一个默认值,数值型的为 0 ,字符串 的为 空串 ,变体为 Empty
运行中出现的问题是 用户名,密码为空时,按command1按钮[microsoft][odbc sql server driver][sql server]在关键字'select'附近有语法错误,对象refesh的方法iadodc失败
2010-08-05 17:21
一角天空
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2010-8-12
收藏
得分:0 
这应该是常见的问题,我也没解决。我的只要加了Refesh就会有这样了的错了。你好那问题好象添加一个数据表有可能解决该错误!
2010-08-12 15:04
快速回复:高手看下这段登录窗口的源码,哪里出错了?
数据加载中...
 
   



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

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