Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Grupo de Teaming del ClubDelphi

 
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 14-02-2005
brandolin brandolin is offline
Miembro
 
Registrado: jul 2003
Ubicación: Mendoza
Posts: 324
Poder: 21
brandolin Va por buen camino
Ventanas MDIChild y Normal

Hola a todos los foristas, estoy teniendo un problema y creo que es conceptual, a ver si me puedo explicar bien para que me ayuden.

Tengo un form de consulta de artículos, el cual es MDIChild. Dentro de la aplicación necesito que se llame de esta forma es decir como fsMDIChild y en otras necesito que se llama de la corma fsNormal. Para eso y viendo que esa propiedad (formstyle) no se puede cambiar en tiempo de ejecución luego de creado el form, me he construido un nuevo constructor para el susodicho form que lo que hace es cambiar dichas propiedades.

El código es el siguiente:

Código:
constructor TfrmConsArticulos.ShowSeleccion(Sender: TObject; var pCodArt: Integer);
begin
     inherited create(nil);
     FormStyle := fsNormal;
     Visible := False;
     InicializarEstructuras;  //Ejecuta una consulta en las Base de Datos
     ShowModal;                 //Muestra y espera a que se presione el Boton Seleccionado

     if CodigoSeleccionado //Devuelve el código del articulo.
     then pCodArt := vCodArticulo;
end;
Funciona de maravillas, el problema surge con el evento onFormShow. Resulta que este onFormShow se ejecuta dos veces, una cuando se hace el ShowModal y otra cuando se termina de ejecutar este constructor. ¿Cuál es el problema? Es que en el evento onFormShow especifico algunas consultas que se debe hacer cuando el form se ejecuta como MDIChild y no cuando se ejecuta como Normal. Esto hace que la base de datos se lea dos veces, etc, etc.

Espero haber sido claro al presentar el problema. ¿Alguna sigurencia?
Gracias por todo desde ya.
Responder Con Cita
 



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 18:10:42.


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