| Ver tema anterior :: Ver tema siguiente |
| Autor |
Mensaje |
Inad LW Invitado
|
Publicado: Mie 06 Ago, 2003 4:04 pm Asunto: Crear y borrar controles dinamicamente |
|
|
Holaaa wenass... estoy haciendo una pqña aplicacion... y me atasque en una cosa...
En un punto tengo q crear un control dinamicamente...
TGroupBox *g=new TGroupBox (frmPrincipal);
g->Parent=frmPrincipal; frmPrincipal->InsertComponent(g);
g->Top=295;g->Left=0;g->Name="pepe" +AnsiString (i);g->Caption=" Configuracion IP ";
El control se crea aparece etc etc....
En el evento on close del form trato de borrar el componente creado dinamicamente
for (int i=0; i<frmPrincipal->ComponentCount; i++){
TGroupBox *grb = dynamic_cast<TGroupBox*>(frmPrincipal->FindComponent("pepe"));
if (grb){
grb->~TGroupBox();
break;
}
}
Pero salta una excepcion EAccessViolation at Address 00000000
Alguna sugerencia....
Inad LW |
|
| Volver arriba |
|
 |
Inad LW Invitado
|
Publicado: Mie 06 Ago, 2003 4:28 pm Asunto: Weno parece q di con ello.... |
|
|
Al final parece q consegui arreglar el asunto....
for (int i=0; i<frmPrincipal->ComponentCount; i++){
TGroupBox *grb = dynamic_cast<TGroupBox*>(frmPrincipal->FindComponent("pepe"));
if (grb){
frmPrincipal->RemoveControl(grb);
grb->~TGroupBox();
break;
}
}
notese la linea de frmPrincipal->RemoveControl(grb);
Inad LW |
|
| Volver arriba |
|
 |
Inad LW Invitado
|
Publicado: Mie 06 Ago, 2003 5:34 pm Asunto: Lo siento xic@s falsa alarma |
|
|
| Sigo sin encontrar una manera de crear dinamicamente los compnentes trabajar con ellos y luego borrarlos sin q salte alguna excepcion... toy abierto a sugerenciass |
|
| Volver arriba |
|
 |
Temerario Ens

Registrado: 08 Jul 2003Mensajes: 36Ubicación: Barranquilla (Colombia)
|
Publicado: Mie 06 Ago, 2003 11:05 pm Asunto: |
|
|
Hola, según veo tu código al momento de crear le colocas el nombre "pepe" + i (pepe1 por ejemplo) y cuando quieres borrar estas buscando pepe y en conclusión estas haciendo lo correcto.
Te recomiendo que le asignes un valor diferente de cero a la propiedad Tag para identifcar los controles creados dinámicamente, eso es lo que yo hago. |
|
| Volver arriba |
|
 |
|