¡Buen día a todos!
Cita:
|
Empezado por marto
...al ejecutarse el destructor, Items vale nil, de manera que se produce una excepción
|
Tengo un par de dudas: ¿cómo determinas que Items realmente tiene un valor de Nil, y cuál es exactamente la excepción que se produce?
Quizás la propiedad
Items es válida, pero no así uno de sus objetos
Items.Objects [ I ]. Esto podría deberse a una ejecución previa del método Clear, o a la destrucción previa de otro objeto TNxAuxCombo que comparta la misma lista de objetos. Considera que la sentencia
Código:
Items.Objects [ I ].Free;
destruye el objeto
Items.Objects [ I ], pero no hace que dicha expresión se convierta en Nil (el puntero al objeto sigue siendo el mismo después de llamar a Free). No se si por ello habrás agregado un bloque de protección Try..Except:
Código:
try Items.Objects[i].Free; except end;
Estaré al tanto de este caso.
Una última cosa: ¿Serías tan amable de reducir las muestras de código a máximo 60 columnas por línea, para que el mensaje no se ensanche tanto?. Muchas gracias.
Al González

.