VB6.0如何text里面的行排序~!

来源:百度知道 编辑:UC知道 时间:2024/05/28 20:08:10
VB6.0如何text里面的行排序~!
text
就是点击一个按钮然后能让text3里面的行按照数字排序到text4里面~!
比如:
text3里面是
12345678902
12345678909
12345678906
12345678908这样的一行一行的~!数字
排到text4里面就是
12345678902
12345678906
12345678908
12345678909
从小到大的顺序

Private Sub Command1_click()
Dim nums() As Long, fo As Variant, n As Long
ReDim nums(Len(Text3) / 3)
For Each fo In Split(Text3, vbCrLf) 'strs
If IsNumeric(fo) Then nums(n) = Val(fo): n = n + 1
Next
ReDim Preserve nums(n - 1)
BubSort nums
Text4 = ""
For Each fo In nums
Text4.SelText = fo & vbCrLf
Next
End Sub

Sub BubSort(Arr() As Long)
Dim n As Long, i As Long, j As Long, tmp As Long
n = UBound(Arr) - LBound(Arr) + 1
For j = 1 To n - 1
tmp = 0
For i = n - 1 To 1 Step -1
If Arr(i - 1) > Arr(i) Then
tmp = Arr(i - 1)
Arr(i - 1) = Arr(i)
Arr(i) = tmp
tmp = 1
End If
Next
If tmp = 0 Then Exit For
Next
End Sub

用数组嘛,每行数据放到数组里,然后把数组按大小排序,生成新数组,输出到text4里