![]() |
Manejo de presentaciones de power point en monitor extendido
Que tal,
Necesito desarrollar un programa en Delphi 5 que me permita controlar presentaciones en power point, el programa se ejecutará en dos monitores, en el primero se elegirán las presentaciones y en otro monitor (extendido) debo hacer que se visualice la presentación de power point. He buscado en la ayuda tecleando "power point" ó "presentaciones " pero no he encontrado algo que me sirva, también he tratado de usar los componentes que vienen en la ficha SERVERS pero no he podido comprender su funcionamiento. De antemano les agradezco la atención y la ayuda que me puedan dar… Saludos. |
Para el manejo de monitores tienes en Delphi una clase llamada TMonitor y aparte en TScreen también hay algunas propiedades para manejarlos.
Lo que se me ocurre es que ejecutes tu aplicación en el primer monitor y luego intentes abrir las presentaciones en el segundo utilizando: (a) Probar a modificar el monitor primario y luego lanzar las presentaciones utilizando WinExec o ShellExecute. La duda que tengo es si este cambio sólo afecta a tu aplicación o a todas. (b) Otra opción (si la primera falla) es abrir el PowerPoint dentro de una ventana de tu programa Delphi (maximizada y sin bordes) y esta sí, forzar a que salga en el segundo monitor. Para abrir en PowerPoint dentro de una ventana se me ocurren dos posibilidades: (b1) Importar la librería "Microsoft PowerPoint X.X Object Library" o utilizar componentes de la paleta Servers (que al final debe ser lo mismo). (b2) Utilizar el código que ha salido otras veces por los foros (ahora no tengo el link) para ejecutar una aplicación deltro de una ventana de un programa delphi. Un saludo. |
Gracias, dejame intentarlo y te aviso...
Saludos. |
lo que te aconcejo es que importes mediante una activex powerpoint, o con algun componente,
luego usas 2 formularios en el primero estara tu aplicacion y en el segundo colocas el control powerpoint usando el TMonitor puedes decirle a un formulario, en que pantalla visualizarse mas o menos asi: Screen.Monitors[index]; Screen.MonitorCount; donde index es el numero de monitor; ejemplo: en form1: //asumiendo que el form1 sera tu control oncreate(...); begin setbounds(Screen.Monitors[0].left, Screen.Monitors[0].top, Screen.Monitors[0].width, Screen.Monitors[0].height) end; en form2 //en form2 estara tu powerpoint oncrate (...); var index :byte; begin index := Screen.Monitorcount-1; setbounds(Screen.Monitors[index].left, Screen.Monitors[index].top, Screen.Monitors[index].width, Screen.Monitors[index].height) end; a mi me funciono en una aplicacion que hice, tambien para 2 monitores espero que te sirva de ayuda |
La franja horaria es GMT +2. Ahora son las 23:34:27. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi