• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 481
  • Last Modified:

Delphi2010: Layout Problem

hi all,

in one project there is a form A which use a parent form B.

in form A there is a TEdit component, if this component is moved vertically in the IDE, it can be correctly displayed when the application runs. But if this componet is moved  horizontally in the IDE, it turns back to the original position when the application runs.

following are some related information of this TEdit component:

Align: alNone
left: 200

any suggestion?

btw, are there special books or ressource to explain how to design layout in Delphi?

thanks,

wantime
0
wantime
Asked:
wantime
3 Solutions
 
Geert GruwezOracle dbaCommented:
post the 2 dfm sources

there is some considerations when redesigning the parent form
when using VFI (Visual Form Inheritance)
0
 
jimyXCommented:
When Form B calls form A do you set the Left value of the TEdit component in your code (e.g. OnFormA Show or even from Form B) ?
0
 
wantimeAuthor Commented:
thanks, but the codes is not for public.

0
Independent Software Vendors: 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!

 
Geert GruwezOracle dbaCommented:
then post only the related piece of code

the header of the form
and the piece for the edit

of both forms

too many variables otherwise to ask for
0
 
Geert GruwezOracle dbaCommented:
the biggest problem is with default values
and if they are stored or not in the dfm

this is not so for positioning, but i'm just trying to explain with the property Left

sample:
  default value for property Edit.Left: 50
  if default value > not stored in dfm

start situation
Form A dfm
  > Edit1.Left = 60

Form B dfm (inherited from Form A)

Form B will only store the differences with Form A

situation 2: change form B
Form B
  > Edit1.Left = 80
> save form B > no problem

situation 3: change form A
Form A
  > Edit1.Left = 70
> save form A

the component Edit1 will remain on Edit1.Left = 80 on Form B

there may be other factors  too
 like anchors, margins, oldcreateorder

0
 
Ephraim WangoyaCommented:

You probably have code thats specifically setting the the edit's left property or some event that when triggered repositions the Edit

In an inherited form, if you move a control, the controls position is saved in the dfm and thats whats loaded.
0
 
developmentguruCommented:
You should be able to, easily, create a do nothing example project that you CAN post on this site.  Then the experts would at least have something to work with...
0
 
wantimeAuthor Commented:
thanks. there are some codes which resetting the edit's left property.
0

Featured Post

VIDEO: THE CONCERTO CLOUD FOR HEALTHCARE

Modern healthcare requires a modern cloud. View this brief video to understand how the Concerto Cloud for Healthcare can help your organization.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now