Como Elimina los Componentes de un Contenedor
Buenas Tardes Foristas
Con el siguiente codigo en un scrollbox creo en ejecucion los campos pertenecientes a una tabla. Cunado Cambio de Tabla requiero recrear los campos de la nueva tabla previa eliminacion de los campos anteriores. pero no he podidom usarlo. Ajunto el Codigo de creacion de los campos y el internto de eliminarlos . La creacion de Campos funciona muy bien Gracias por su colaboracion Código:
|
Cita:
|
Solo por fastidiar :p
También podemos ir hacia adelante:
|
Cita:
Saludos! |
Como Elimina los Componentes de un Contenedor
Hola Amigos,
Muchas Gracias por responder, he leido las 2 alternativas que proponen + la consideracion de rendimiento. Aplique la siguiente: Código:
while ScrollBox1.ComponentCount > 0 do Utilizo turbo delphi 2006 gratuito:D |
Porque No Podia Eliminar los Componentes Creados en Ejecucion
Hola Amigos,
La propiedad de .ComponentCount es actualizada cuando un contenedor es propietario de un componente y no depende de la propiedad Parent Para poder utilizar la instruccion ScrollBox1.ComponentCount , los componentes creados en ejecucion deben ser creador con un propietario :eek: Ejemplo0 RunTimeButton := TDBEdit.Create(nil) ; // OWNER ?? APPLICATION Ejemplo1 RunTimeButton := TButton.Create(Self); // OWNER LA FORMA Ejemplo1 RunTimeButton := TButton.Create(ScrollBox1); // OWNER SCROLLBOX1 Muchas Gracias por su Apoyo :) Cita:
|
Cita:
Saludos |
Cita:
Pues eso no es del todo cierto... si lo implementas como se había mencionado antes: claro que se evalua en cada iteración... puedes probar poniendo alguna función en el for y llevando un log de las llamadas a la función y verás que en cada iteración del for se manda a evaluar la expresión de terminación. Otra cosa sería si hicieras:
Entonces si solo se evalua una sola vez la cuenta de los componentes. |
La condición de terminación claro que se evalúa en cada ciclo, pero delphi.com.ar se refiere a la cantidad de items.
Si ponemos:
se toma el valor de ScrollBox.ControlCount al comienzo del ciclo y nada más. De la forma que propone seoane:
el valor de ControlCount debe tomarse cada vez. // Saludos |
La franja horaria es GMT +2. Ahora son las 10:07:32. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi