关于TextBox控件


【实例说明】
    程序中有三个textbox控件,第一个文本框里面输入任意一些数字,比如“123,345,579,456,482”,第二个文本框也任意输入一些数字,比如“123,555,579”,怎样才能在第三个文本框里面显示出(也就是把这两个文本框有相同部 分的数字“123,579”删除的意思,但是只要显示出第一个文本框删除相同数字以后留下的数字)“345,456,482”呢 ?

【编程思路】
    利用数组来控制各文本框中的数。

【设计步骤】
    1.新建一个标准工程,创建一个新窗体,默认名为Form1。
    2.在Form1窗体中放置三个Text控件和两个Command控件。

    3.源程序  [素材源程序下载]

Private Sub Command1_Click()
        Dim i As Integer
        Dim j As Integer
        Dim txt1(1004) As String '求第一个textbox的每个数,如果数据很多的话,可以用静态数组
        Dim txt2(1004) As String
        Dim num1 As Integer '第一个textbox数据个数
        Dim num2 As Integer '第二个textbox数据个数
        Dim len1 As Integer '第一个textbox长度
        Dim len2 As Integer '第二个textbox长度
        Dim blntxt1(10) As Boolean '是否有相同的
        len1 = Len(Text1.Text)
        len2 = Len(Text2.Text)

        num1 = 1 '没有"," 也会有一个数
        num2 = 1

        For i = 1 To len1 '求第一个textbox输入的数
                If Mid(Text1.Text, i, 1) = "," Then
                        num1 = num1 + 1
                Else
                        txt1(num1) = txt1(num1) & Mid(Text1.Text, i, 1)
                End If
        Next i

        For i = 1 To len2 '求第二个textbox输入的数
                If Mid(Text2.Text, i, 1) = "," Then
                        num2 = num2 + 1
                Else
                        txt2(num2) = txt2(num2) & Mid(Text2.Text, i, 1)
                End If
        Next i

        For i = 1 To num1
                For j = 1 To num2
                        If txt1(i) = txt2(j) Then
                                blntxt1(i) = True
                        End If
                Next j
        Next i

        For i = 1 To num1 '在text3输出结果
                If blntxt1(i) = False Then
                        Text3.Text = Text3.Text & txt1(i) & ","
                End If
        Next i

        Text3.Text = Mid(Text3.Text, 1, Len(Text3.Text) - 1)

End Sub

'退出
Private Sub Command2_Click()
        Unload Me
End Sub