Tecnología

Inicio

Cómo Selección aleatoria de elementos de ListView en Visual Basic 6

En Visual Basic 6, controles ListView pueden mostrar muchos tipos de información en diferentes formas, tales como elementos de base de datos que se muestran en una lista de usuarios o de las opciones que aparecen como iconos. elementos de ListView se muestran en el orden en que se agregan. Sin embargo, durante la ejecución de su programa, puede reorganizar el orden en que aparecen estos elementos, por ejemplo mediante la aleatorización su orden. Para ello, es necesario almacenar temporalmente los elementos de ListView en otro lugar y luego vuelva a insertar en un orden diferente.

Instrucciones

1 Abra el proyecto de Visual Basic. Pulse la tecla "F7" para abrir la ventana de código y escriba el código siguiente:

Private Sub RandListView ()

arr ReDim (1 Para ListView1.ListItems.Count) As String

Dim Tmp como variante

j Dim As Long

La primera línea crea una nueva subrouting llamado "RandListView." La segunda línea asigna espacio para una matriz con el primer índice en uno y el último índice en el mismo número de elementos que existen en el control ListView. Use uno como el índice de partida, ya que es el número de índice que elementos de ListView comienzan en. También crea dos variables adicionales. La variable "tmp" llevará a cabo a medida que los valores temporales aleatoriamente la matriz y los "j" variable actúa como un contador.

2 Escriba el siguiente código:

aleatorizar

Para i = LBound (arr) Para UBound (arr)

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

Si i & lt;> j Entonces

tmp = arr (i)

arr (i) = arr (j)

arr (j) = tmp

Terminara si

Siguiente yo

La primera línea llama a la función de Visual Basic Selección aleatoria para asegurar que múltiples llamadas a la RandListView no producen los mismos resultados. El siguiente ciclo de líneas a través de elementos en el control ListView y si no existen ya en la matriz, que se agregan a él. Cuando todos los artículos están en la matriz, el bucle termina.

3 Escriba el siguiente código:

ListView1.ListItems.Clear

Para i = 1 Para UBound (arr)

ListView1.ListItems.Add = arr (i)

Siguiente yo

La primera línea se borran los elementos actualmente en el control ListView. Las siguientes tres líneas de repoblar con los elementos aleatorios en la matriz.

4 Tipo "RandListView" en cualquier otro lugar en el programa para llamar a la función y cambiar aleatoriamente los elementos en el control ListView.