奇怪,弄了半天不知怎么回事,高手指点.

aight 2008-04-05 12:07:06
很简单的一个小程序,我的问题是这样的:
我有一个文本框text1,用来输入身份证号,还有一个按钮command1,用来判断身份证号的位数是不是18位的.
command单击事件代码如下:

Private Sub Command1_Click()
Dim number As String

number = Text1.Text '从文本框输入的数字
If Len(number) <> 18 Then
MsgBox "您输入的身份证位数不符合位数!", vbOKOnly + vbExclamation, "提示"
Call Text1_GotFocus '调用Text1_GotFocus
End If
End Sub

在Text1_GotFocus事件中代码如下:

Private Sub Text1_GotFocus()
Text1.SelStart = 0
Text1.SelLength = Len(Text1)
End Sub

我想问的是,当身份证不符合位数时,为什么没有调用Text1_GotFoucs()啊?
高手指教.谢谢.
...全文
99 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
aight 2008-04-06
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 cbm666 的回复:]

Private Sub Text1_GotFocus()
Text1.SelStart = Len(Text1)
End Sub
[/Quote]
text1_GotFocus事件这么写的话,没法选中文本框中已输入的数字,只会把光标移到数字的最后,不是楼上是否是这意思.
zdingyun 2008-04-05
  • 打赏
  • 举报
回复
GotFocus 事件
当对象获得焦点时产生该事件;获得焦点可以通过诸如 TAB 切换,或单击对象之类的用户动作,或在代码中用 SetFocus 方法改变焦点来实现。

Private Sub Command1_Click()
Dim number As String
number = Text1.Text '从文本框输入的数字
If Len(number) <> 18 Then
MsgBox "您输入的身份证位数不符合位数!", vbOKOnly + vbExclamation, "提示"
Text1.SetFocus
Call Text1_GotFocus '调用Text1_GotFocus
End If
End Sub

Private Sub Text1_GotFocus()
Text1.SelStart = 0
Text1.SelLength = Len(Text1)
End Sub
游子 2008-04-05
  • 打赏
  • 举报
回复
学习 我通常用笨方法来实现。
舉杯邀明月 2008-04-05
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 forbearORfolie 的回复:]
跑过~
[/Quote]


想跑?抓回来!不坦白交待谁也别想跑 ^_^
forbearORfolie 2008-04-05
  • 打赏
  • 举报
回复
跑过~
嗷嗷叫的老马 2008-04-05
  • 打赏
  • 举报
回复
.........................
舉杯邀明月 2008-04-05
  • 打赏
  • 举报
回复
Private Sub Command1_Click()
Dim number As String
number = Text1.Text '从文本框输入的数字
If Len(number) <> 18 Then
MsgBox "您输入的身份证位数不符合位数!", vbOKOnly + vbExclamation, "提示"
Text1.SetFocus
'Call Text1_GotFocus '不用去调用别的了
Text1.SelStart = 0
Text1.SelLength = 127 '随便用一下比较大的数就行了.
End If
End Sub

cbm6666 2008-04-05
  • 打赏
  • 举报
回复
Private Sub Command1_Click()
Dim number As String
number = Trim(Text1.Text) '从文本框输入的数字
If Len(number) <> 18 Then
MsgBox "您输入的身份证位数不符合位数!", vbOKOnly + vbExclamation, "提示"
Text1.SetFocus
End If
End Sub

Private Sub Text1_GotFocus()
Text1.SelStart = Len(Text1)
End Sub

7,762

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧