Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 08-04-2005
VRO VRO is offline
Miembro
 
Registrado: abr 2004
Posts: 230
Poder: 21
VRO Va por buen camino
3 botones para acceder a un mismo formulario.

Hola que hay??, os explico cual es mi duda ya que no la he dejado muy clara en el titulo,

tengo 4 formularios (Form1, Form2, form3,Form4) y en los 3 primeros tengo 3 botones, 1 en cada uno de ellos, atraves de ellos accedo al formulario 4.

Ahora viene el tema, segun cual de los botones pulse en el formulario 4 hago una cosa distinta y su resultado se desemboca en cada uno de los formulario que le han llamado, yo para resolver esto siempre lo he hecho con variables globales, en los 3 formulario declero una variable(a1,a2,a3) y en el Form4 hago :

Código Delphi [-]

if form1.a1=1 then
  //hago aqui las cosas
end;

if form2.a2=1 then
 //hago las cosas
end;

  ..............

Me parece muy feo hacerlo de esta forma. Si alguien sabe otra forma mas professional de hacerlos, ruego me lo digan.

Gracias por prestarme su tiempo.
Responder Con Cita
  #2  
Antiguo 08-04-2005
Avatar de yusnerqui
yusnerqui yusnerqui is offline
Miembro
 
Registrado: mar 2004
Ubicación: Cuba
Posts: 679
Poder: 21
yusnerqui Va por buen camino
Definir un constructor

Pues te pudieras definir un constructor para tu form4

Código Delphi [-]
 Constructor CreateDiferente(AOwner: TComponent;FormLLama : Byte);

Implementation
 
Constructor TForm4.CreateDiferente(AOwner: TComponent;FormLLama : Byte);
begin
  Inherited Create (AOwner);
  Case  FormLLama of
    1:'Hago esto';
    2:'Hago lo otro'
    3:'Hago lo de más allá'
  end;
  showmodal;
end; 
 
//ahora para crear tu forma desde una de las otras puedes decir.
  with TForm4.CreateDiferente(Application,1) do
     free;

Espero que esto te guste, y sea lo que buscas.

Saludos Yusnerqui
__________________
Lo importante no es llegar primero, sino saber llegar.

Para que puedas llegar mejor lee la Guia de Estilo

Responder Con Cita
  #3  
Antiguo 08-04-2005
VRO VRO is offline
Miembro
 
Registrado: abr 2004
Posts: 230
Poder: 21
VRO Va por buen camino
Wink una preguntina mas

Yo en mi caso tengo un DBGrid si dependiendo de que formulario En el evento OnClick del DBGrid hago una cosa distinta, ¿también me sirve lo que me has expuesto?


Muchas gracias por tu rapida respuesta, la voy a probar ahora mismito y te cuento, a ver si resulta lo que yo quiero
Responder Con Cita
  #4  
Antiguo 08-04-2005
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Aunque la pregunta es un tanto vaga ya que no das detalles acerca de la funcionalidad de Form4, es posible que te convenga usar herencia visual. Partes de un formulario base con la funcionalidad común y para cada caso derivas un formulario con la funcionalidad específica (el OnClick del DBGrid por ejemplo). Cada uno de los otros formularios construye la instancia correspondiente. De esta manera liberas a un sólo formulario (Form4) de lidiar con varios comportamientos ya que cada comportamiento específico está en su propio formulario.

// Saludos
Responder Con Cita
  #5  
Antiguo 08-04-2005
VRO VRO is offline
Miembro
 
Registrado: abr 2004
Posts: 230
Poder: 21
VRO Va por buen camino
os explico mas

Me extiendo más en mi expliación, los tres formularios de los que he hablado antes corresponde a tres tablas que trabajan con (Form1) datos de clientes, (Form2) datos de empresas, (Form3) datos de habitaciones, como podeis intuir se trata de la gestión de un pequeño hotel, en estos 3 formularios tengo en cada uno un boton de busqueda que llama al form4 , que consta de un DBGrid. Segun de que formulario llame el DBGrid se carga con lo datos de una tabla y en el evento ONClick del DBGrid devuelvo al formulario que ha realizado la llamada los datos del lo pedido.

Siento haber sido tan rancia en mi expliación espero que ahora me entendais mejor.

Gracias

PD: Probaré esta opcion Roman, al igual que la opción anterior estoy en ello.
Responder Con Cita
  #6  
Antiguo 08-04-2005
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Pero sigues sin explicar qué es lo que hace Form4. Sí, ya sé que llena de datos pero ¿de qué naturaleza son éstos? Porque da la impresión de que estás tratando de usar un mismo formulario para funciones muy disímiles.

// Saludos
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro


La franja horaria es GMT +2. Ahora son las 00:38:31.


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
Copyright 1996-2007 Club Delphi