FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
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:
procedure TFDSPTAB.BitBtn_showFieldsClick(Sender: TObject); var i:Integer; s:string; campo:TField; DBEdit0: TDBEdit; Label0: TLabel; localOwner: TComponent; top:Integer; begin // se intenta eliminar los campos los campos creados con anterioridad for i:=0 to ScrollBox1.ComponentCount -1 do begin; ScrollBox1.Components[i].free ; end; // crear los campos por la tabla abierta for i:=0 to D.DSPTAB.Fields.Count -1 do begin S:= D.DSPTAB.fields[i].FieldName; DBEdit0 := TDBEdit.Create(nil) ; Label0 := TLabel.Create(nil) ; with Label0 do begin Name:= 'Label_' + s; Caption :=s + ' ...................................'; Parent:= ScrollBox1; Top:= (24) +(i*23); Left:=7; end; with DBEdit0 do begin Name :=s; DataField :=s; //Parent:= Form1; Parent:= ScrollBox1; // Panel_fields; Top:= (Height + 3) +(i*23); Left:=160; Width :=200; DataSource := D.DSPTAB_d ; end; end; |
#2
|
||||
|
||||
Cita:
__________________
delphi.com.ar Dedique el tiempo suficiente para formular su pregunta si pretende que alguien dedique su tiempo en contestarla. |
#4
|
||||
|
||||
Cita:
Saludos!
__________________
delphi.com.ar Dedique el tiempo suficiente para formular su pregunta si pretende que alguien dedique su tiempo en contestarla. |
#5
|
|||
|
|||
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 ScrollBox1.Components[0].free ; Utilizo turbo delphi 2006 gratuito |
#6
|
|||
|
|||
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 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:
Última edición por ASAPLTDA fecha: 04-06-2007 a las 23:00:52. |
#7
|
||||
|
||||
Cita:
Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente, se lo volveré a explicar hasta que no lo entienda, Gracias. |
#8
|
||||
|
||||
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.
__________________
"Hey, nena, debe ser genial ser tú y verme a mí mismo..." |
#9
|
||||
|
||||
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 |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Necesito un contenedor transparente | Anunakis | Gráficos | 4 | 02-06-2008 03:17:36 |
Imagen de Paintbrush en Contenedor OLE | pablo | OOP | 0 | 09-06-2005 01:08:35 |
Agregar controles a un contenedor | senpiterno | Varios | 5 | 08-09-2004 02:22:25 |
Contenedor con barras de scroll | senpiterno | Varios | 3 | 07-09-2004 05:17:57 |
como se elimina un carecter de un string... | ronimaxh | Varios | 10 | 23-08-2004 22:03:53 |
|