Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Problemas con ventanas hijas en aplicación MDI (https://www.clubdelphi.com/foros/showthread.php?t=96582)

Badillo 01-02-2024 01:23:49

Problemas con ventanas hijas en aplicación MDI
 
Saludos,

Tengo un problema y no encuentro que puede estar provocándolo. Me explico:

En una Aplicación MDI, cuando abro varias ventanas hijas, si hago click en alguna auntomáticamente cambia su posición para el centro, por tanto no me está permitiendo ubicarlas en posiciones que me facilite ver el contenido de todas a la vez, porque siempre van al centro y se van solapando una con otra.

Alguna idea?

Gracias.

Delphi01 01-02-2024 02:12:59

Cita:

Empezado por Badillo (Mensaje 554271)
Saludos,

Tengo un problema y no encuentro que puede estar provocándolo. Me explico:

En una Aplicación MDI, cuando abro varias ventanas hijas, si hago click en alguna auntomáticamente cambia su posición para el centro, por tanto no me está permitiendo ubicarlas en posiciones que me facilite ver el contenido de todas a la vez, porque siempre van al centro y se van solapando una con otra.

Alguna idea?

Gracias.

En primer lugar, verifica si has establecido alguna propiedad o evento que esté provocando este comportamiento no deseado. Puede que haya un código en el evento OnActivate o OnShow de las ventanas hijas que las esté moviendo automáticamente al centro.

También puedes revisar si hay algún código en el evento OnCreate o OnActivate del formulario principal (MDI form) que esté configurando la posición de las ventanas hijas al centro de la pantalla.
Si no encuentras ninguna configuración que esté causando esto, una solución alternativa sería modificar manualmente la posición de las ventanas hijas una vez que se abran. Puedes usar la función SetBounds para establecer la posición de las ventanas hijas según tus preferencias.
Por ejemplo, podrías utilizar algo como esto en el evento OnActivate de las ventanas hijas:
Código:

procedure TChildForm.FormActivate(Sender: TObject);
begin
  // Establecer la posición de la ventana hija al abrirse
  SetBounds(Left, Top, Width, Height); // Puedes ajustar los valores según tus necesidades
end;

Saludos

Badillo 01-02-2024 17:19:52

Muchas gracias, por la ayuda

En efecto en el create del formulario principal se hace una llamada a un método que modifica el active de las hijas.

Gracias.

Delphi01 01-02-2024 22:57:24

Cita:

Empezado por Badillo (Mensaje 554285)
Muchas gracias, por la ayuda

En efecto en el create del formulario principal se hace una llamada a un método que modifica el active de las hijas.

Gracias.

Te refieres al método "Show" , ejemplo ?


La franja horaria es GMT +2. Ahora son las 05:45:27.

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