Come Randomizza elementi ListView in Visual Basic 6

August 17

In Visual Basic 6, controlli ListView possono mostrare molti tipi di informazioni in modi diversi, come ad esempio elementi del database visualizzati in un elenco o utenti opzioni indicate come icone. elementi ListView vengono visualizzati nell'ordine in cui vengono aggiunti. Tuttavia, durante l'esecuzione del programma, è possibile modificare l'ordine in cui tali voci, ad esempio randomizing loro ordine. Per fare questo, è necessario per memorizzare temporaneamente gli elementi ListView altrove e poi reinserirle in un ordine diverso.

istruzione

1 Aprire il progetto di Visual Basic. Premere il tasto "F7" per aprire la finestra di codice e digitare il seguente codice:

Private Sub RandListView ()

ReDim arr (da 1 a ListView1.ListItems.Count) As String

Dim Tmp As Variant

j Dim As Long

La prima riga crea un nuovo subrouting chiamato "RandListView." La seconda linea assegna lo spazio per un array con il primo indice in uno e l'ultimo indice allo stesso numero di elementi che esistono nel controllo ListView. Utilizzare uno come l'indice di partenza perché questo è il numero di indice che gli oggetti ListView partono. Inoltre, crea due variabili aggiuntive. La variabile "tmp" conterrà valori temporanei, come si casuale l'array e la "J" atti variabile come un contatore.

2 Digitare il seguente codice:

Rendi casuale

Per i = LBound (arr) Per UBound (arr)

j = CLng(((UBound(arr) - i) * Rnd) + i)

Se i & lt;> j Poi

tmp = arr (i)

arr (i) = arr (j)

arr (j) = tmp

Finisci se

Next i

La prima riga chiama la funzione di Visual Basic Randomize per garantire che più chiamate al RandListView non producono gli stessi risultati. Il prossimo ciclo di linee attraverso elementi nel controllo ListView e se non esistono già nella matrice, questi vengono aggiunti ad esso. Quando tutti gli elementi presenti nella matrice, il ciclo termina.

3 Digitare il seguente codice:

ListView1.ListItems.Clear

Per i = 1 To UBound (arr)

ListView1.ListItems.Add = arr (i)

Next i

La prima riga cancella gli elementi attualmente nel controllo ListView. Le tre righe successive ripopolare con gli elementi randomizzati nella matrice.

4 Tipo "RandListView" altrove nel programma per chiamare la funzione e casuale gli elementi nel controllo ListView.