Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Go Back   Foros Club Delphi > Principal > Varios
Register FAQ Members List Calendar Guía de estilo Search Today's Posts Mark Forums Read

Coloboración Paypal con ClubDelphi

Reply
 
Thread Tools Search this Thread Display Modes
  #1  
Old 06/03/2008
Zakio14's Avatar
Zakio14 Zakio14 is offline
Miembro
 
Join Date: Feb 2008
Location: Costa Rica
Posts: 22
Poder: 0
Zakio14 Va por buen camino
Traer al frente un fromHijo

Pura vida Foro!!

Mi consulta es la siguiente.

Tengo un From Madre y tengo un Botón que llama a una Ventana Hija.

Cada vez que clicko en este botón me crea una ventana nueva y eso me irrita de cierto modo, lo que quiero es crear una función que me cree el fromHijo si no esta creada, pero si ya esta creada que me la llame al frente de las demás pero sin volver a crearla.

Mi consulta es: Que Algoritmo uso para llamar esto, les agradezco toda ayuda que me puedan brindar.. Mil Gracias
Reply With Quote
  #2  
Old 06/03/2008
Caral's Avatar
[Caral] Caral is offline
Miembro Premium
 
Join Date: Aug 2006
Posts: 7,659
Poder: 28
Caral Va por buen camino
Hola
Codigo?
Con que codigo llamas al from?
Recuerda si nos das detalles podremos hacer algo mas.
Saludos
Reply With Quote
  #3  
Old 06/03/2008
eduarcol's Avatar
[eduarcol] eduarcol is offline
Miembro Premium
 
Join Date: Aug 2003
Location: En los estados Zulia y Merida de Venezuela
Posts: 4,151
Poder: 28
eduarcol Va por buen camino
utiliza la variable global que se genera en la unit del formulario.

Código Delphi [-]
Form2: TForm2;

En las propiedades del proyecto quitalo de los autocreate y pasalo a los avalaible, agrega este codigo al boton.

Código Delphi [-]
if not Assigned(Form2) then
      Form2 := TForm2.Create(Application);

   Form2.Show;
__________________
...Yo naci en esta ribera del arauca vibr@d0r
Soy hermano de la espuma,
de la garza, de la rosa y del sol...
Viva Venezuela
Reply With Quote
  #4  
Old 06/03/2008
jachguate's Avatar
jachguate jachguate is offline
Miembro
 
Join Date: May 2003
Location: Guatemala
Posts: 6,254
Poder: 30
jachguate Va por buen camino
Bueno, yo lo hago mas o menos como dice Eduarcol, con formularios padres/hijos. Supongo que las mismas reglas aplican para formularios Madres/hijas...

Digamos que para completar el algoritmo, aporto lo siguiente:

Código Delphi [-]
  if not Assigned(Form2) then
    Form2 := TForm2.Create(Application)
  else if Form2.WindowSate = wsMinimized then
    Form2.WindowSate = wsNormal;
  Form2.BringToFront;

Obviamente, hay que tener cuidado de que la variable Form2 se asigne a nil al momento de destruir el formulario para que esto funcione adecuadamente.

Hasta luego.

__________________
Juan Antonio Castillo Hernández (jachguate)
Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate
Reply With Quote
  #5  
Old 08/03/2008
Zakio14's Avatar
Zakio14 Zakio14 is offline
Miembro
 
Join Date: Feb 2008
Location: Costa Rica
Posts: 22
Poder: 0
Zakio14 Va por buen camino
Pura Vida!

Gracias por su ayuda eso me funciono bien!! Mil Millones de Gracias

Gracias porque siempren me sacan mis dudas!!
Reply With Quote
  #6  
Old 08/03/2008
Zakio14's Avatar
Zakio14 Zakio14 is offline
Miembro
 
Join Date: Feb 2008
Location: Costa Rica
Posts: 22
Poder: 0
Zakio14 Va por buen camino
Pura Vida Foro!

Bueno Este codigo lo encontre y me funciona a la perfeccion!!!

Lo Pongo aqui por si alguien lo llega a necesitar...
Código Delphi [-]
 
//Esta funcion se crea en Public
 
function ExisteForm(Formulario : string) : boolean;

// Esta funcion ya definida en el Public
function TPrincipal.ExisteForm(Formulario : string) : boolean;
var
   ChildIndex : integer; 
begin
  ChildIndex := 0;
  result := false;
  while (ChildIndex < MDIChildCount) and (not result) do
    begin
      if MDIChildren[ChildIndex].Name = Formulario then
         result := true
      else 
          inc(ChildIndex);
    end;
  if result then
     MDIChildren[ChildIndex].BringToFront;
end;
 
 
// Esto se coloca en el llamado del formulario hijo MDI
 if not ExisteForm('FMatricBach') then  //Primero se llama esta función para asegurarnos de que no existe el formulario
     begin                                          // ExisteForm es la funcion creada aqui la llamamos
       FMatricBach := TFMatricBach.Create(Application);
       FMatricBach.show; //no uso showModal
     end;

//Esta función es llamada cada vez que se abre un Formulario desde Menú
//para asegurarnos de que no se encuentra ya abierto el mismo 
//Buscamos entre los formularios hijos abiertos, si no esta cargado se carga
//De lo contrario se trae al frente de los demás.
Hasta la proxima foristas...

Last edited by jachguate : 11/03/2008 at 04:51. Reason: ¡usad la etiqueta delphi!
Reply With Quote
Reply


Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
traer al frente un form no modal (de entre varios), utilizando el valor en el caption jcapitan OOP 2 23/05/2007 02:33
Traer al frente mdichild carlohg OOP 15 15/05/2007 05:02
Que ventajas tiene php frente a asp.net?? CARLOS E PHP 1 14/09/2006 09:42
Form Al frente el_enigma1 OOP 2 20/01/2005 00:28
¿Como traer al frente un formulario ? athal Lazarus, FreePascal, Kylix, etc. 2 11/05/2004 15:53


All times are GMT +2. The time now is 21:37.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi