?
Solved

Center on 800*600 and 640*480

Posted on 1999-01-19
5
Medium Priority
?
156 Views
Last Modified: 2010-04-06
How can I center a button on a screen of 640*480, 800*600 and 1024*768 pixels.

Thanks a lot,
Vincent

0
Comment
Question by:Vincentg
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
5 Comments
 
LVL 17

Accepted Solution

by:
inthe earned 30 total points
ID: 1362443
put the following on  form resize or form create:

procedure TForm1.FormResize(Sender: TObject);
begin
with Button1 do begin
Left:=(Parent.Width - Width) div 2;
Top :=(Parent.Height - Height) div 2;
end;
end;

Regards Barry
0
 
LVL 4

Expert Comment

by:erajoj
ID: 1362444
Use this instead:
  with Button1 do SetBounds( (Parent.Width - Width) div 2, (Parent.Height - Height) div 2, Width, Height );
  or...
  with Button1 do SetBounds( (Screen.Width - Width) div 2, (Screen.Height - Height) div 2, Width, Height );

/// John
0
 
LVL 17

Expert Comment

by:inthe
ID: 1362445
erajoj
why you say "use this instead" setbounds position is identical to my method on all sized screens/forms???
Regards Barry
0
 
LVL 20

Expert Comment

by:Madshi
ID: 1362446
Vincent, if you've Delphi4, just use the anchor property to bind the component to each border...

Barry, if you set "left" and "top" seperately, the buttons is moved/updated/redrawed/checked/blabla/blabla two times.
If you call SetBounds, the button is only xxx one time.
I'm not sure, but I think, changing e.g. Left ends up in a call like this:
  SetBounds(newLeft,top,width,height);

Regards, Madshi.
0
 

Author Comment

by:Vincentg
ID: 1362447
I want to thank all for there comments.

Vincent

0

Featured Post

Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

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

A lot of questions regard threads in Delphi.   One of the more specific questions is how to show progress of the thread.   Updating a progressbar from inside a thread is a mistake. A solution to this would be to send a synchronized message to the…
Hello everybody This Article will show you how to validate number with TEdit control, What's the TEdit control? TEdit is a standard Windows edit control on a form, it allows to user to write, read and copy/paste single line of text. Usua…
Michael from AdRem Software explains how to view the most utilized and worst performing nodes in your network, by accessing the Top Charts view in NetCrunch network monitor (https://www.adremsoft.com/). Top Charts is a view in which you can set seve…
Add bar graphs to Access queries using Unicode block characters. Graphs appear on every record in the color you want. Give life to numbers. Hopes this gives you ideas on visualizing your data in new ways ~ Create a calculated field in a query: …
Suggested Courses
Course of the Month9 days, 15 hours left to enroll

762 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