Tengo un problemilla con normalizetopmost y restoretopmost que no tengo muy claro. Se trata de una aplicación desarrollada en delphi 5 que funcionó correctamente durante algunos años y poco algunas ventanas empezaron a salir por debajo de las que las llamaban, como si el normalizetopmost no funcionara. Finalmente llegué e a la conclusión de que a partir de instalar un versión de internet explorer 8 o superior en un windows XP empiezan estos funcionamientos extraños. He conseguido "solucionarlo" cambiando del formstyle del formulario que queda por encima y deberia quedar debajo a fsnormal antes del normalizetopmost y devolviendolo a fsstayontop depues del restoretopmost según el ejemplo de abajo:
Código Delphi
[-]
TQuery(Dataset).ApplyUpdates;
Paginas.ActivePage := Tab_Lista;
if (rb_imprimir.Checked) Then
begin
FormStyle :=fsNormal;
Imprimir_Recibo;
FormStyle :=fsStayOnTop;
end;
siendo imprimir recibo no mucho mas que esto:
Código Delphi
[-]
With TF_QrReciboWin.Create(application,Q_Rejilla,Copias) do
try
Application.NormalizeAllTopMosts;
Diseno.PreviewReport(normaldir(Extractfiledir(Application.Exename))+'Recibos.qr2');
finally
free;
Application.Restoretopmosts;
end;
Alguien tiene alguna idea de que ha cambiado y porque pasa esto. gracias de antemano