![]() |
![]() |
![]() |
![]() |
![]() |
FTP | ![]() |
![]() |
CCD | ![]() |
![]() |
Buscar | ![]() |
![]() |
Trucos | ![]() |
![]() |
Trabajo | ![]() |
![]() |
Foros | ![]() |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
![]() |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
|||
|
|||
Controlar si un form ha sido creado antes
Buenos días,
Estoy creando una aplicación que cuando presiona un botón crea el formulario con la instrucción Application->CreateForm... Lo que no se, es antes de crear el form consultar si ya ha sido creado para no volver a repetir la acción cada ves, como lo puedo hacer? Grácias.
__________________
http://www.peliculasconpalomitas.com |
#3
|
|||
|
|||
![]() Muy interesante lo del patrón Singleton, aunque ya lo implementaba de alguna forma nunca supe que tenía un nombre. En cuanto al problema no sería más fácil un simple if? me explico:
Código:
if (!Application->FindComponent("Form2")) { Application->CreateForm(__classid(TForm2), &Form2); Form2->Show(); } else { MessageBoxA(Handle, "Ya se creo", "", MB_ICONINFORMATION); } Código:
void __fastcall TForm2::FormClose(TObject *Sender, TCloseAction &Action) { /**/ Action=caFree; } |
#4
|
||||
|
||||
Si bien en muchos casos una solución como la expuesta por _cero_ o la consistente en una simple bandera, puede ser válida en muchos casos, carece de la verdadera ventaja del uno de un patrón singleton.
Usando singleton se asegura que nunca se llega a instanciar mas de un objeto de la clase. No me refiero a desechar la segunda instancia sino a que no llegue a existir. Saludos. |
![]() |
|
|
![]() |
||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Problema al asignar valor antes de visualizar el form | drykea | Varios | 20 | 19-01-2009 17:38:37 |
Como ejecutar un evento antes de mostrar un form | hperez | Varios | 5 | 18-05-2007 07:12:25 |
Codigo antes de mostrar form - Maximizar | lafirma | Varios | 20 | 03-08-2006 23:46:30 |
Como saber si un Formulario ha sido creado | Durbed | OOP | 7 | 13-10-2005 13:06:28 |
¿Cómo saber si un Form está creado? | nesetru | Varios | 5 | 09-02-2004 12:59:37 |
![]() |
|