Отчёт открывается в фоновом окне
Здравствуйте. Столкнулся с проблемой отображения PreviewForm при вызове отчёта, который расположен в контейнере DataModule.
При вызове из другой формы метода
frxReport1.ShowReport;
отчёт появляется в фоновом (свёрнутом) окне.
И отобразить его получается только мышкой.
Подскажите, как заставить отчёт "Выпрыгнуть" на передний план? Пока не переместил в DataModule всё было отлично.
Пробовал:
1) frxReport1.PreviewForm.BringToFront (и после ShowReport, и в событиях onPreview и onShow)
2) ShowWindow(Handle, SW_SHOWNORMAL)
Работает только установка свойства frxReport1.PreviewForm.FormStyle := fsStayOnTop, однако его использовать нельзя, т.к. в случае возникновения ошибок визуально программа зависнет - ведь окно отчёта развёрнуто в полноэкранный размер.
Также форма не получает фокуса. Активной остаётся форма, вызвавшая отчёт. Здесь не помогает даже PreviewForm.SetFocus.
Помогите, пожалуйста, выйти из этой ситуации.
При вызове из другой формы метода
frxReport1.ShowReport;
отчёт появляется в фоновом (свёрнутом) окне.
И отобразить его получается только мышкой.
Подскажите, как заставить отчёт "Выпрыгнуть" на передний план? Пока не переместил в DataModule всё было отлично.
Пробовал:
1) frxReport1.PreviewForm.BringToFront (и после ShowReport, и в событиях onPreview и onShow)
2) ShowWindow(Handle, SW_SHOWNORMAL)
Работает только установка свойства frxReport1.PreviewForm.FormStyle := fsStayOnTop, однако его использовать нельзя, т.к. в случае возникновения ошибок визуально программа зависнет - ведь окно отчёта развёрнуто в полноэкранный размер.
Также форма не получает фокуса. Активной остаётся форма, вызвавшая отчёт. Здесь не помогает даже PreviewForm.SetFocus.
Помогите, пожалуйста, выйти из этой ситуации.
Комментарии
Отчёт вызывается из Form2:
и вот при этом действии отчёт (PreviewForm) уходит на задний план, а активной становится Form1.
Если Close закомментировать, то отчёт вызовется как обычно.
Есть ли какой-то способ опять вернуть отчёт на передний план после закрытия Form2 ?