mmmm... es que no suelo aparecer mucho por el foro de vb6 (tras responder, luego nadie suele volver)...
Al decir deshabilitar, pensaba más en sistemas de VB6. Pero en general si en otros controles resulta complejo, lo más sencillo es deshabilitar el propio control.
Control.Enabled =FALSE
Bucle de inserción de datos
'....
Fin bucle
Control.Enabled = TRUE
Un control deshabilitado simplemente deja de redibujarse y con ello (y básicamente), impedir al usuario su uso a través d ela interfaz grádica del mismo.
En definitiva deja de pintarse. Cuando se habilita de nuevo, el redibujado es siempre forzado.
En los controles de interfaz, si no están correctamente programados, suele pasar eso, sería acorde que poseyeran un método de entrada múltiple (en los controles que lo admiten) o bien disponer del par de métodos para que el programador desactive y active (a voluntad) la actualización de la interfaz gráfica del control.
Al menos si que todos los controles se comportan correctamente cuando se deshabilitan y habilitan. Primeor dejando de dibujarse si están deshabilitados y después redibujarse al cambiar su estado de Enabled desde FALSE a TRUE.
No obstante, deshabilitar y habilitar no es evidente... yo soy más partidario de estas opciones.
- Propiedad: FreezeRedraw o incluso de un
- Método: InsertMultiple(datos, UpdateOnlyToFinish:=TRUE), y cuando el parámetro fuera false, actualizaría con cada inserción.
Claramente la 2ª opción es válida solo para controles contenedores de datos que alteran la vista.
Incluso la 1ª opción nunca sobra en el resto de controles, si no se necesita no se invoca pero cuando se necesite, sin duda su utilidad queda manifiesta.
------
p.d.: El tema de actualización no indiqué nada, porque no me quedaba claro, si se refería a búsquedas de los datos, a la eficiencia dle método a usar, o si se refería lo que dices tú
Elektro, a realizar la búsqueda al instante de que el usuario haga un cambio en la entrada de datos (caso típico de actualizar una vista de un listbox, haciento un 'TopItem' coincidente con el primer ítem que parece encajar con el ´termino de búsqueda 'actual' y que suele ser parcial mientras se va escribiendo.
Esperaba que tras una seguna entrada sobre lo cmentado, pidiera soluciones dando explicaciones más en detalle del caso... en fin según el interés del usuario, me extiendo más o menos en explicaciones...