1
votes

I have an application with multiple forms that are called and showed by pushing buttons on one of the other forms. I want to have these forms all on the same position on the screen , all having the same size and scale. so to the user it just looks like one screen and he is not able to switch between forms . I do want the forms to be resizable and movable on the desktop. What is the best approach to do this in FireMonkey?

1
Why not a single form where you host different frames? What you currently has in your multiple forms is moved to multiple frame. At run time, you make one of them visible.fpiette

1 Answers

1
votes

So to the user it just looks like one screen and he is not able to switch between forms. I do want the forms to be resizable and movable on the desktop

At first, those two statements seemed contradicting. But you obviously mean that the forms are resizable and movable together simultaneously.

In the following, Form1 is the form with the buttons to display the "secondary forms".

Solution 1

Only keep one form (in addition to Form1) visible at any time. Thus you don't have to synchronize form movement and resizing.

Solution 2

Implement the secondary forms as frames that you show within an ordinary form, Form2. To assure that the frames always covers the client area of Form2, you can set their Align property to Client. To force a specific frame to be on top of all other frames, call its BringToFront method.