Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Delphi - Excel primer plano (https://www.clubdelphi.com/foros/showthread.php?t=90277)

shoulder 09-05-2016 16:43:07

Delphi - Excel primer plano
 
Puede ser una pregunta un poco tonta, pero no lo puedo hacer, emito listados en excel (no plantillas pre hechas) lo genera el sistema pero porque me muestra el reporte excel detras del programa y no delante.

Código Delphi [-]
Excel.Visible := True;

Gracias

AgustinOrtu 09-05-2016 16:46:06

No das informacion suficiente

Neftali [Germán.Estévez] 09-05-2016 17:04:44

Estaría bien saber qué código estás utilizando para abrir ese Excel.
¿Manualmente? ¿Con algún componente?

shoulder 09-05-2016 17:05:49

Excel
 
Hola armo un listado comun excel....
Código Delphi [-]
// Crea una aplicacion Excel.
Excel := CreateOleObject ('Excel.Application');

// Agrega un libro.
Excel.WorkBooks.Add (-4167);
// Le asigna un nombre al libro
Excel.WorkBooks[1].WorkSheets[1].Name := 'Repor..'
...
Excel.Visible := True;

El tema que cuando se visualiza el reporte me queda el formulario del programa delante y el listado excel detras o si el form ocupa toda la pantalla se ve minimizado el listado de excel.
Gracias.

TOPX 12-05-2016 16:05:22

Hola,

Ante su pregunta, se debe a que hacer visible la ventana de Excel es diferente que mostrarla al frente de todas las demás ventanas.

Ahora, si se quiere forzar lo segundo, se puede hacer una de dos cosas:
  • activar la ventana de Excel, con:
    Código Delphi [-]
      Excel.ActiveWindow.Activate();
  • si eso no da el resultado esperado, utilizar la propiedad Hwnd de ActiveWindow para llamar a SetForegroundWindow (del API del sistema operativo).
-

shoulder 13-05-2016 20:28:09

Excel
 
Hola gracias, como me daba error de parametros con el activate, buscando la linea que me habias dado encontre una que me funciono es :


Código Delphi [-]
Excel.Application.WindowState := -4140;
Excel.Application.WindowState := -4137;


La franja horaria es GMT +2. Ahora son las 01:33:01.

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