帮忙解释一下这段VB

来源:百度知道 编辑:UC知道 时间:2024/05/16 06:15:57
Dim I As Long, J As Long
Dim X1 As Long, X2 As Long
Dim str As String
Dim Flag As Boolean

X1 = Val(Text1.Text)
X2 = Val(Text2.Text)

For I = X1 To X2
Flag = False
For J = 1 To Len(CStr(I))
If Mid(CStr(I), J, 1) <> Mid(CStr(I), Len(CStr(I)) - J + 1, 1) Then
Flag = True
Exit For
End If
Next J
If Flag = False Then str = str & I & " "
Next I

MsgBox str

End Sub

Private Sub Command1_Click()
Dim I As Long, J As Long '定义i,j为长整型变量
Dim X1 As Long, X2 As Long '定义X1,X2为长整型 变量
Dim str As String '定义str为字符型变量
Dim Flag As Boolean '定义Flag为逻辑型变量

X1 = Val(Text1.Text) '将Text1里的文本转换成数值型放到X1变量
X2 = Val(Text2.Text) '将Text2里的文本转换成数值型放到X2变量

For I = X1 To X2 '开始循环,从X1-X2,步长为1,假设X1=1 X2=3,那么循环3次,I分别=1、2、3
Flag = False '初始化Flag
For J = 1 To Len(CStr(I)) '开始循环,1-Len(CStr(I)),如果i=10,那么就是1 to 2 ,因为cstr(i)是将i变成字符型,len是得到字符型变量的长度,所以当i=10是为2,当i=100是=3
If Mid(CStr(I), J, 1) <> Mid(CStr(I), Len(CStr(I)) - J + 1, 1) Then '比较数字和对称位,这里暂时这么一说,后面详解。
Flag = True '如果有不对称位,则记录出来
Exit For '退出for j循环
End If
Next J 'for j循环结束
If Flag = False Then str = str & I & " " '如果没有不对称的位数,则记录到str中
Next I
MsgBox str '显示
End Sub

--------------------------------------------
其实,这题是要用户在两个text中输入两个数。然后两个