PDA

Ver la Versión Completa : Listado de ventanas MDI


Vlady
11-07-2008, 14:59:26
Amigos del club tengo la siguiente consulta, estoy trabajando con una aplicación MDI y quisiera que el listado de las ventanas hijas que se encuentren abiertar me aparezca en una barra donde el usuario facilmente conozca que ventanas se encuentran abiertas y pueda cambiar entre las ventanas, e mirado en los foros y solo aparecen ejemplos con listados pero en el menu, tal vez en una toolbar o algun componente parecido q realiza esto, parecido a cuando uno abre las tablas en el IBExpert.

Gracias

Caro
11-07-2008, 15:22:02
Hola Vlady, te pongo un ejemplo para que veas las ventanas MDI que tienes abiertas.


for i:=0 to Self.MDIChildCount-1 do
showmessage(Self.MDIChildren[i].Name);


Saluditos

Vlady
22-07-2008, 16:27:06
Gracias Carol por tu contribución pero como puedo tener un listado de las ventanas actualmente abiertas en una barra de tareas.

Delphius
22-07-2008, 21:50:54
Gracias Carol por tu contribución pero como puedo tener un listado de las ventanas actualmente abiertas en una barra de tareas.
Hola Vlady, ¿Podrías por favor aclarar el panorama? ¿Quieres listar todas la ventanas abiertas en la barra de tareas? ¿O por el contrario sólo quieres listar todas las ventas que se abren en TU aplicación?

Puesto que son dos cosas distintas: en el primer caso nos estamos refiriendonos a listar todos los programas en ejecución, mientras que en el segundo nos referimos a listar ventanas que son y pertenecen a una aplicación en particular.

Si lo que deseas es listar dichas ventanas, solo será cuestión de alterar un poco el código que amablemente te aportó nuestra compañera Caro. En vez de emplear ShowMessage, habrá que emplear el método que agregue elementos. Esto dependerá del control que emplees para listar. Puede ser un memo, un TreeView.

Por ejemplo, si deseo listarlo en un TListBox, podría hacer algo como esto:

for i := 0 MDIChildCount - 1 do
ListBox1.Add(MDIChildren[i].Name);

Y después habrá que implementar un método, procedimiento o función que dado un nombre. Muestre la ventana.

No te enojes si te digo que si nos describieras mejor el panorama te sabríamos asesorar mejor.

Saludos,

RolphyReyes
22-07-2008, 22:46:31
Saludos.

Creo que a lo que se refiere el Vlady es a listar las ventanas que están activas dentro de la aplicación, como la opción de Window del menú de las aplicaciones "convencionales".

Si este es el caso, entonces lo que debes de hacer es a tu formulario principal decirle cual opción del menú va a listar las ventas.


FrmMenu.WindowMenu := OpcionMainMenuParaListar;


Eso lo puedes hacer visualmente desde el Object Inspector buscando la propiedad WindowMenu de tu formulario principal.