vb窗口中有10个文本框,在每个文本框中填写姓名,每个姓名只能填写一次,如果名字重复就自动提示,怎么做到,谢谢各位
代码怎么写
追答'在窗体上创建10个文本框。
'最好是创建有10个成员的TextBox控件数组,这里是txtName(0)到txtName(9)
'定义一个控制变量,以避免连续发生失去焦点事件,造成死循环。
Dim bln As Boolean
Private Sub Form_Load()
bln = False
End Sub
Private Sub txtName_Change(Index As Integer)
bln = False
End Sub
Private Sub txtName_LostFocus(Index As Integer)
If Not bln Then
For i = 0 To 9
If Index <> i And txtName(Index).Text = txtName(i).Text And txtName(Index).Text <> "" Then
MsgBox "姓名重复,请重新填写!"
bln = Not bln '在这里修改控制变量
txtName(Index).SelStart = 0
txtName(Index).SelLength = Len(txtName(Index).Text)
txtName(Index).SetFocus
Exit For
End If
Next
End If
End Sub
已经检测运行,没有问题。
本回答被提问者和网友采纳vb窗口中有10个文本框,在每个文本框中填写姓名,每个姓名只能填写一次...
可以在文本框失去焦点(LostFocus事件)的时候检查,用失去焦点的文本框的内容与其他文本框的内容逐一比较,有相同内容的,首先弹出Msgbox对话框提示,然后让该文本框重新获得焦点(SetFocus),重新输入。
VB操作使用文本框连续输入10个数据到数组中,每输入一个数据点确定后
Dim a(9)Private Sub Command1_Click() Static Counter As Integer a(Counter) = Val(Text1.Text) Text2.Text = Text2.Text + "(" & Format(Counter + 1, "00") & ")" + Space(15) & a(Counter) & vbCrLf Counter = Counter + 1 Text1.Text = "" Text1.SetFocusEnd...
VB6.0中,如何限制10个数组文本框text1只能输入数字、一个小数点,和退格...
Text1的Index属性设置为0 然后复制Text1为数组控件,Index属性从1到9 然后在数组控件Text1的KeyPress事件中写代码。
VB怎么在文本框中输入内容
一共七步首先,在窗口中添加一个文本框,如下图所示,然后进入下一步。其次,单击文本框,在属性窗口中设置文本框的属性,清除文本,如下图所示,然后进入下一步。接着,将文本框的enabled属性设置为False,如下图所示,然后进入下一步。然后,在表单上添加一个命令按钮,如下图所示,然后进入下一步。
vb中一个文本框中只能输一个数字并输完后跳到下一个文本框代码...
每个文本框的maxlength都设置成1 代码入下 Private Sub Text1_KeyUp(KeyCode As Integer, Shift As Integer)If IsNumeric(Text1.Text) Then ' 用IsNumeric函数判断输入是否为数字Text2.SetFocus '如果是数字 跳到下一个文本框ElseText1.Text = "" '如果不是数字 清空文本框重新输入End IfEnd ...
vb打开一个有10个随机数的文本,赋值给数组后排序并在文本框中显示
'先去D盘上建一个名为 f.txt 的文件,输入十个随机数,用空格分隔开。然后窗体上一个文本框和一个command1按钮。朋友。Option Base 1 Private Sub Command1_Click()Dim a(10) As Integer Text1 = ""Open "d:\/f.txt" For Input As #1 If Not EOF(1) Then For i = 1 To 10 Input ...
VB 让文本框只能输入一个字符,且输入后,如果再输入其他字符,则覆盖第...
Private Sub Text1_Change()If Len(Text1.Text) > 1 Then Text1.Text = Right(Text1.Text, 1)Text1.SelStart = 2 '把插入点移到第一个字符之后 End If End Sub 在VB6.0下通过调试
vb里面添加文本框,让文本框可以多行显示,满了换行,有一个竖直的滚动条...
object.MultiLine object 所在处代表一个对象表达式,其值是“应用于”列表中的一个对象。设置值 MultiLine 属性设置值有:设置值 描述 True 允许多行文本。False (缺省值)忽略回车符并将数据限制在一行内。说明 当键入文本超出文本框时多行 TextBox 控件将使正文卷绕。使用 ScrollBars 属性也能够在 ...
VB窗口中如果有多个文本框,怎样用数组分别为他们赋值?
你要一个一个进行赋值。如果文本框的名字是有规律的,比如Text1、Text2、Text3……而且数字是连续的,则可以这样(这是一种非常规的用法):For i = 0 To UBound(a) Controls("Text" & i + 1).Text = a(i)Next强烈建议尽量使用控件数组,不但运行速度较快,而且可以节省系统资源消耗 ...
关于VB编程实现:在文本框中每输入一个字符时,立即在窗体上输出当前文本...
Print "***"; Text1; "***" '这个表示在窗体上显示Text1 的文本内容,内容左右各加3个“*”End Sub '本行表示事件过程的结束 --- Private Sub Command1_Click() ’这个表示是Command1的单击事件,本行表示事件过程的开始 Cls ...