End User Report Designer Window Problem
I am having a major problem with Fast Report's End User Report Designer.
If I have a button on a form with it's OnClick event set to call frxReport1.DesignReport, the Designer window appears as it should when my app is run. If the minimize button is clicked, then the Designer window vanishes completely, there is nothing minimized sitting above the task bar, or indeed anywhere to be seen on the screen. Unfortunately this leaves the calling app in an unresponsive state, unable to be closed from the usual 'X' button or from the task bar. The only way to shut the calling app down is by using Task Manager. Obviously the Report Designer window has control, however as it cannot be seen anywhere on the desktop, it cannot be closed to release control back to the calling app. This does seem to be rather unusual behaviour for a windows program.
I notice that a similar message has been posted on the Fast Report newsgroup by Eivind Bakkestuen, without a response.
I will be very grateful if a response could be provided as soon as possible, as application end users will not be impressed to think that my apps are freezing their computers.
Using FR 3.15, Delphi 7 Ent on WXP Pro SP1.
I look forward with interest to an early response, with thanks in advance.
If I have a button on a form with it's OnClick event set to call frxReport1.DesignReport, the Designer window appears as it should when my app is run. If the minimize button is clicked, then the Designer window vanishes completely, there is nothing minimized sitting above the task bar, or indeed anywhere to be seen on the screen. Unfortunately this leaves the calling app in an unresponsive state, unable to be closed from the usual 'X' button or from the task bar. The only way to shut the calling app down is by using Task Manager. Obviously the Report Designer window has control, however as it cannot be seen anywhere on the desktop, it cannot be closed to release control back to the calling app. This does seem to be rather unusual behaviour for a windows program.
I notice that a similar message has been posted on the Fast Report newsgroup by Eivind Bakkestuen, without a response.
I will be very grateful if a response could be provided as soon as possible, as application end users will not be impressed to think that my apps are freezing their computers.
Using FR 3.15, Delphi 7 Ent on WXP Pro SP1.
I look forward with interest to an early response, with thanks in advance.
Comments
The problem is that when I minimize the designer it does NOT minimize to a small window, it vanishes completely. The only thing I notice is that when the designer is minimized if I click on my app's caption on the task bar, when my app minimizes there is an almost subliminal flash of a small window just above the task bar, it is literally as quick as a flash. I think it is the designer window, but it is gone so quickly I can't be sure.
I have tried a very small test app on 3 different machines, 2 with XP Pro SP1, 1 with W2K SP4, and they all show the same behaviour. What I am experiencing is the same as I am getting when using Eivind Bakkestuen's program, as supplied out of the box as it were.
I can let you have my test app which demonstrates this behaviour or the delphi project for you to test, please let me know if you would like them, if so which one.
Thank you for your assistance.
Do you have any further information on this problem. While it is not a problem if the end user designer is not required in an app, if it is needed then it will be a showstopper for my customers, literally.
As I said I can send you a test app if you need it.
Thanks again for the help.
I have now tried the frdemo.exe and confirm that it works as you describe. The problem is that the frdemo window is not maximized on the screen. This seems to be when I get a problem, when a main app window is maximized on the screen, I get the behaviour I have reported.
I have tried to rebuild the frdemo with a maximized window but I now get the following error when trying to recompile the demo:
[Fatal Error] Unit1.pas(11): Unit frxBDEComponents was compiled with a different version of frxCustomDB.TfrxCustomQuery
I have tried to solve this by uninstalling Fast Report and then re-installing, but I still get this error. I am using FR 3.15.
I hope you can offer further assistance.
Thank you for your help.
I've now managed to get past the compiled with a different version problem and can now say that I can show how to cause the problem behaviour with frdemo.exe.
Please do the following rebuild the frdemo project doing the following:
Make the form a resizeable one i.e.
1) Change the Form's BorderStyle to bsSizeable and compile.
Now run frdemo.exe and
1) Maximize the frdemo window
2) Click the design button
3) Minimize the designer window
At this point you should observe that:
The designer is not visible on screen at all.
The main frdemo.exe window has lost focus and cannot controlled in any fashion.
My experience at this point is that it is neccessary to shut down frdemo.exe by using windows Task Manager.
Please try this at your earliest opportunity as I am very eager to get an answer to this problem.
I'm not trying to harass you here, but this problem has quite an impact for me, both in applications I produce and in other tools I use.
Others are able to confirm this problem and, I understand that it has been previously reported quite some time ago.
If you can let me know how you are getting on with investigating this I will be very grateful.
Thank you for your assistance.
I should like to know if you have been able to test the frdemo.exe in the manner I suggested, and what results you obtained. If you got the same behaviour I did, can you let me know how I may avoid this problem, in the simplest way possible, as I really don't have time to investigate the FastReport source in depth.
I look forward to your response.
TfrxDesignerForm = class(TfrxCustomDesigner)
private
procedure WMSysCommand(var Message: TWMSysCommand); message WM_SYSCOMMAND;
procedure TfrxDesignerForm.WMSysCommand(var Message: TWMSysCommand);
begin
if Message.CmdType and $FFF0 = SC_MINIMIZE then
Application.Minimize
else
inherited;
end;
When the designer window is minimized the calling app's window is minimized as well. I have tried this with frdemo.exe and my own test app.
What needs to happen is that the designer window is minimized (a small minimized window just above the taskbar is quite acceptable), and the calling app window remains un-minimized while getting operational control or focus back, while the designer window is minimized.
A user needs to be able to minimize the designer window while being able to continue to work in the calling program.
Please let me have your comments on this.
Thanks for your efforts so far and, if I can test further modifications please let me know.
However, is there no way that the designer can be made a modeless window.
I believe that most end-users will expect to be able to work in the calling program while the designer is running. I know I needed to refer to the database managment program (which uses FR Designer) I was using, while I was in the designer window.
I'll think about other ways round this in the meantime.
I would appreciate your comment on whether the designer window can be made modeless, also any suggestions for what I might do to accomplish this, if possible.
Thanks again for your help.
Thank you.