Solved

How do I find the size of a form programmatically ?

Posted on 2014-11-18
6
197 Views
Last Modified: 2014-11-19
Hi,

I learned to size a form by using auto size and sizing a main panel on the form. This works well but really I should be able to grab the edges of a window and size it this way, then get the size of the window and resize my components. The first problem I encountered is that I cannot access form size programmatically. The other mystery is, which event should I use.
0
Comment
Question by:ChLa
6 Comments
 
LVL 3

Expert Comment

by:lopem
ID: 40450735
ChLa,

The form is also an object (like a button, for example). So your problem, I guess is very easy to solve. Put a form with a button and try on the click evento of teh button the next code:

procedure TForm1.Button1Click(Sender: TObject);
begin
  ShowMessage('The size of the form is '+ inttostr(Form1.Width) + 'x'+ inttostr(Form1.Height));
end;


Hope this helps!
0
 
LVL 26

Accepted Solution

by:
Sinisa Vuk earned 500 total points
ID: 40450847
Best way is to align components according to form. Put panel and set Align to client, put other components on it. Then you can set another panel on same level to left or right.... Components can be resized using Anchor property ....
0
 

Author Comment

by:ChLa
ID: 40451801
This second answer works really well. Is an event triggered after the form has been rezised that I can use to do a few things ?
0
Courses: Start Training Online With Pros, Today

Brush up on the basics or master the advanced techniques required to earn essential industry certifications, with Courses. Enroll in a course and start learning today. Training topics range from Android App Dev to the Xen Virtualization Platform.

 
LVL 26

Expert Comment

by:Sinisa Vuk
ID: 40451946
Components like Form, Panel, Frame, ... have OnResize event and you can use it for what you need.
0
 
LVL 19

Expert Comment

by:MerijnB
ID: 40452325
Alternatively you can set align to alCustom, and use the OnAlignPosition() event do to the aligning yourself.
0
 

Author Comment

by:ChLa
ID: 40452929
The Form OnResize event is working well for me now. At first when I tried it I was confused by the fact that the first event occurs when the form is created. I ignored the first event and now it is all good. Thank everyone for their help.
0

Featured Post

Courses: Start Training Online With Pros, Today

Brush up on the basics or master the advanced techniques required to earn essential industry certifications, with Courses. Enroll in a course and start learning today. Training topics range from Android App Dev to the Xen Virtualization Platform.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

The uses clause is one of those things that just tends to grow and grow. Most of the time this is in the main form, as it's from this form that all others are called. If you have a big application (including many forms), the uses clause in the in…
Objective: - This article will help user in how to convert their numeric value become words. How to use 1. You can copy this code in your Unit as function 2. than you can perform your function by type this code The Code   (CODE) The Im…
This tutorial gives a high-level tour of the interface of Marketo (a marketing automation tool to help businesses track and engage prospective customers and drive them to purchase). You will see the main areas including Marketing Activities, Design …
Sending a Secure fax is easy with eFax Corporate (http://www.enterprise.efax.com). First, just open a new email message. In the To field, type your recipient's fax number @efaxsend.com. You can even send a secure international fax — just include t…

813 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

10 Experts available now in Live!

Get 1:1 Help Now