Ver Mensaje Individual
  #2 (permalink)  
Antiguo 07/08/2008, 07:46
Avatar de hiper_xavier
hiper_xavier
 
Fecha de Ingreso: mayo-2008
Mensajes: 7
Antigüedad: 16 años, 11 meses
Puntos: 0
Exclamación Respuesta: Problema al eliminar elementos de un array

aca especifico mas lo que nesecito:

en un modulo declaro por poner un ejemplo el siguiente type


Código:
PUBLIC TYPE Typ_01 

   x as integer
   y as string
   z as string

END TYPE

Public Arr_01(500) as Typ_01

este arreglo Arr_01 lo ocupo para almacenar datos de un ListView los problemas que tengo son

1- ustedes saben que si el usuario no quiere ingresar los datos de un formulario presiona un boton cancelar y ya no se sabe mas de la informacion que contubo el formulario en los controles mientras el usuario trabajo con el, osea, al momento de que el usuario quiera trabajar con el formulario nuevamente y al llamar al arreglo Arr_01 para llenar el ListView todos los controles deverian estar formateados sin datos y listos para que el usuario empiece de cero pero aun asi al llamar formulario despues de haber puesto cancelar anteriormente, por poner un ejemplo el usuario ingreso 6 registros anteriormente y no los quizo guardar, al momento de trabajar nuevamente con el formulario aparecen los 6 elementos pero en blanco a pesar que al momento de cancelar el formulario e intentado poniendo Arr_01= nothing o erase Arr_01 o Arr_01.x=Nothing Arr_01.y=nothing, los borra pero los espaciosn en el arreglo quedan igual


2- al momento de borrar elementos aleatoriamente dentro del formulario si es que el usuario quiere borrar elementos del Listview borra el contenido del registro pero al llamar nuevamente al Listview aparecen nlos mismos elementos que estaban anteriormente pero en blanco


lo que euiqro yo es eliminar estos registro pero que no se vean despues de borrarlos, al borrarlos aleatoriamente los borra pero quedan los espacios en blanco en el arreglo, a pesar que al borrar con un

Código:
'Arr_02 es un arreglo que contiene los elementos seleccionados del ListView que seran borrados, lleno este arreglo con los elementos a borrar antes de 

'recorro el arreglo en forma inversa para no dañar la integridad de los datos a borrar, el campo clave para borrar los registros es Arr_01.x

For i = Ubound(Arr_02) to  Lbount(Arr_02) STEP -1
   
        For x = Lbound(Arr_01) to Ubond(Arr_01)
     
                    IF Arr_01(x).x = Arr_02(i) then
                                 Arr_01(x).x =Arr_01(x+1).x
                                 Arr_01(x).y =Arr_01(x+1).y
                                 Arr_01(x).z =Arr_01(x+1).z
                   END IF
        
       NEXT X

NEXT i
         
Arr_01
Este es un ejemplo del codigo que ocupo para borrar elementos en forma aleatoria de el array

Les agradezco de antemano si me pueden ayudar en este predicamento de antemano Muchas Gracias

Última edición por hiper_xavier; 07/08/2008 a las 07:54