Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   OOP (https://www.clubdelphi.com/foros/forumdisplay.php?f=5)
-   -   Creacion de formulario en ejecucion (https://www.clubdelphi.com/foros/showthread.php?t=9381)

Remp 22-04-2004 09:07:18

Creacion de formulario en ejecucion
 
Bueno mi problema es el siguiente me he creado una aplicacion, y tengo creado el formulario principal como padre y todos los demas como hijos por lo tanto al hacer click sobre un boton me crea el formulario que yo quiero, pero el problema esta es q tantas veces como hagas click se me crea el formulario como podria evitar eso?? Gracias de antemano

defcon1_es 22-04-2004 11:59:38

Cita:

Empezado por Remp
el problema esta es q tantas veces como hagas click se me crea el formulario

¿Por qué no compruebas en el Click del botón si ya hay una instancia del formulario que vas a crear?

Ejp:
Código:

if not(Assigned(Form1))
  then begin
        <Creo una instancia del formulario>
  ...
  ...
  end;

PD: Asegurate que después de destruir el formulario (método Free)
el formulario (puntero) apunta a nil, que es lo que comprueba la función Assigned.

Remp 22-04-2004 12:07:18

Gracias
 
defcon1_es Gracias has clavado lo que preguntaba, menuda papeleta mas solucionao coleguita GRACIAS GRACIAS .....

Remp 22-04-2004 12:48:48

mas dudas
 
defcon, eso me sirve pero yo creo el formulario y si intento volver a crearlo me salta el mensaje que le he puesto que ya esta abierto pero si cierro el formulario y intento abrirlo otra vez me sigue saltando el mensaje, y al cerrar el formulario tengo un action:=cafree para liberar memoria como puedo evitar eso

jachguate 22-04-2004 19:00:24

en el evento onDestroy del formulario hace esto:

Form1 := nil; (suponiendo que la variable que apunta al formulario se llama form1, claro... ;) )

kinobi 22-04-2004 19:14:15

Hilo movido desde el foro "InterBase y Firebird" por estar fuera de tema.

Saludos.


La franja horaria es GMT +2. Ahora son las 15:04:49.

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