Bonjour,
j'ai posé la question en FireMonkey, mais je remets au gout du jour une Form VCL. Et je ne m'en sors pas mieux+
On reste donc en VCL.
Je voudrais que le panel central paCT soit centré dans la Form lors des resize de celle-ci... Déjà on fait cela comment sur un TPanel vide ?
Pour réaliser le TPanel centré, j'ai pris le composant le plus sophistiquéun gridPanel... J'ai un problème de programmation de ce composant pour définir les hauteurs et largeurs de ces cellules comme dans FMX d'ailleurs.
Je veux que les TLabels laLOGIN et laPASSWORD soient autosize. Une fois ceci fait, je veux qu'il y ait un espace de 8 pixels entre le bord droit de laPASSORD, en réalité max(laLOGIN.width, laPASSWORD.width), et le bord gauche des 2 TEdits, edLOGIN et edPASSWORD (edLOGIN.Left) sachant que edLOGIN et edPASSWORD ont une taille définie et identique. Une fois ceci fait je veux que le paCT soit autosize puis centré dans la Form. Je le fais mais avec des calculs et un TPanel (pas un Gridpanel qui refuse obstinément de faire ce que je veux). Je fais exactement la même chose sans aucun calcul en Lazarus : ce sont les ancrages qui font le travail.
Pour la partie Right-Bottom (le TPanel paRB), c'est le délire complet. Les btQUIT et btVALID ont une taille définie. Je les veux l'un à gauche de l'autre sur une même ligne horizontale. Mais un paRB autosize les place verticalement l'un au dessus de l'autre ?!
Les Delphiens font comment avec cette approche que je n'assimile pas et qui me semble pour l'instant limitée ?
Alors je sais cela semble anecdotique. En réalité je ne trouve pas que cela le soit. Voici de copie d'écran du même programme (là c'était en FMX avec un TGridpanelLayout) sur 2 windows, un XP et un 7.
Le problème se trouve au niveau du label "Votre mot de passe"... Plus près en 7, il était mangé en XP... Visiblement la gestion dynamique est "moyenne". Je n'ai jamais rencontré ce problème en lazarus et pourtant les polices Win/Nux ne sont pas identiques... Peut-être est-ce la raison pour laquelle les ancrages sont si bien pensés en Lazarus.
Partager