Por favor explique este código VB, soy un novato, ¡30 puntos! !
Y LstIzquierda. SelCount gt0 significa que si el número seleccionado es mayor que 0, LstLeft comenzará a repetirse.
El uso de SelCount o Selected(X) depende de las necesidades reales.
2. Se anidan dos bucles para garantizar que cada elemento seleccionado en LstLeft se mueva a LstRight. La función de Exit For es verificarlo nuevamente desde el principio cada vez que se elimina un elemento.
Cada vez que se elimina un elemento en LstLeft, el número de serie de cada elemento posterior es -1. Si el ciclo continúa, es posible que no se logren los resultados esperados. De hecho, este anidamiento no sólo es ineficaz, sino también difícil de leer.
3. Lo siguiente es una palabra clave para el bucle For, que no puede faltar. El siguiente es el nombre de la variable del bucle For, como Siguiente X aquí. El nombre de la variable es X. El siguiente también se puede escribir directamente sin un nombre de variable.
4. Si cambia junto a Finalizar si, se saldrá del bucle For cada vez que se marque el primer elemento y el bucle While continuará. El bucle While atravesará el bucle For nuevamente y saldrá del bucle For después de verificar el primer elemento...
Si solo no se selecciona el primer elemento, se formará un bucle infinito. bucle es que el programa se detiene.
-
¿Crees que esto es más eficiente que antes? Sólo necesitas comprobarlo dos veces de principio a fin.
Private Sub CmdRight_Click()
Marca X como un número entero
Si está a la izquierda. SelCount gt luego 0
Para X = 0 a LstLeft. LstCount - 1
si queda. Seleccionado(X) = Verdadero Entonces
LstRight. AddItemLstLeft. List(X)
Termina si
Siguiente X
Para X = 0 a LstLeft. LstCount - 1
si queda. Seleccionado(X) = Verdadero Entonces
Gira a la izquierda. Eliminar elemento X
Finalizar si...
Siguiente