Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
Update control position when form is centered
Message
De
09/06/2015 20:06:15
 
 
Information générale
Forum:
Visual FoxPro
Catégorie:
Autre
Versions des environnements
Visual FoxPro:
VFP 9 SP2
OS:
Windows Server 2012
Network:
Windows 2008 Server
Database:
MS SQL Server
Application:
Web
Divers
Thread ID:
01620818
Message ID:
01620822
Vues:
62
>I have a Date Control that I use everywhere in the application. The control is a container with a textbox and a button. When user clicks on the button the Calendar pops up for user to select a date (I am sure everybody has these controls). The Calendar shows right below the container, based on the container (Date Control) position. This works everywhere but on the form that has Auto Centered set to .T. In this case the Calendar pops up in the position where the form would be opened if not for the Auto Centered.
>
>How do I update the position of all controls on the form set to Auto Center?

One thing I've done in the past when I want something to pop up at a fixed position relative to something else, is to pass the desired coordinates to the invoking call. Suppose you want the top left of the calendar to always appear at the bottom left corner of the container (i.e. the Parent of the button):
* Button.Click()
ShowCalendar( This.Parent.Left, This.Parent.Top + This.Parent.Height )

* ShowCalendar()
* Create the object
* Set its .Left and .Top properties to the passed values
* Show it
Similarly, you could just pass in a reference to This.Parent, and let ShowCalendar() do all the arithmetic.
Regards. Al

"Violence is the last refuge of the incompetent." -- Isaac Asimov
"Never let your sense of morals prevent you from doing what is right." -- Isaac Asimov

Neither a despot, nor a doormat, be

Every app wants to be a database app when it grows up
Précédent
Suivant
Répondre
Fil
Voir

Click here to load this message in the networking platform