Det ser ud til at være vanskeligt (VB5). + har lavere ascii-værdi end minus, så positive værdier kommer først i en sorteret liste.
Et forslag er at lave et array og udføre buble-sort i det, og derpå skrive værdierne til en liste, der ikke er sorteret.
Dim var As String, a As Integer Private Sub Command1_Click() For a = 0 To List1.ListCount - 1 List1.ListIndex = a If Val(List1.Text) > 0 Then var = Format(List1.Text, "+000.0") Else var = Format(List1.Text, "000.0") End If List1.RemoveItem List1.ListIndex List1.AddItem var Next a List1.Refresh End Sub
Private Sub Form_Load() List1.AddItem "1,4" List1.AddItem "-0,3" List1.AddItem "13" List1.AddItem "-6,3" List1.AddItem "42" End Sub
Dette giver i listen +001,4 +013,0 0042,0 -000,3 -006,3
:) jeg fik det til at virke, hvis nogen vil ha' løsningen er den her:
Lav 2 lists, en hvor du skriver de tilfældige tal (lsttopbadplayers) og en der skal sættes i orden (lsttopbadplayersrev).
Private Sub Form_load() Dim balance As Currency Dim Q Dim U
Q = 0
Do Until Q = frmMain.lstusers.ListCount lsttopbadplayers.AddItem (frmMain.lblbalance(Q + 1).Caption)
Q = Q + 1 Loop
End Sub Private Sub cmdlsttopbadplayers_Click() Dim high As Currency
Q = 0
high = lsttopbadplayers.List(0)
Do Until Q = lsttopbadplayers.ListCount
If lsttopbadplayers.List(Q) > high Then high = lsttopbadplayers.List(Q) ID = Q End If
Q = Q + 1 Loop lsttopbadplayers.RemoveItem (ID) lsttopbadplayersrev.AddItem high
End Sub
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.