fregolo52
Messages postés1114Date d'inscriptionmercredi 15 juin 2011StatutMembreDernière intervention 6 mai 2021
-
7 août 2008 à 11:30
SebLinck
Messages postés212Date d'inscriptionmardi 17 mai 2005StatutMembreDernière intervention23 juin 2011
-
7 août 2008 à 11:48
Bonjour,
Je ne suis pas un spéciliste de l'IHM.
J'essaie de créer une FormView qui sera appelée plusieurs fois dans une même fenêtre(CDialogMain). Suivant la quantité de données à afficher la Formview et ses contrôles ne seront pas de la même taille.
J'ai utilisé la méthode OnSize de la FormView pour redimentionner les contrôles. Par exemple j'ai une listbox qui a tous le même point d'ancrage (top, left). Je fais donc un GetWindowPos et après un SetWindowPos pour changer uniquement la hauteur.
Mon problème c'est que j'ai l'impression que GetWindowPos renvoi la position de la listbox par rapport à la CDialogMain et quand je réaffecte avec SetWindowPos j'ai l'impression que c'est relatif à la FormView.
J'ai tenté de claquer en dur dans le code des valeurs pour voir le comportement de l'affichage, j'ai même utilisé les valeurs (top, left, right, buttom) données par le designer, mais la listbox n'est pas positionnée au même endroit qu'avec le designer et ne fait pas la même taille.
Quelqu'un peut-il me guider sur les fonctions à appeler et leurs options ?
SebLinck
Messages postés212Date d'inscriptionmardi 17 mai 2005StatutMembreDernière intervention23 juin 2011 7 août 2008 à 11:48
Salut,
il faut que tu regarde du côté de ClientToScreen et ScreenToClient,
Tu doit probablement récupérer des coordonnées relative et réaffecter
des coordonnées absolue ( ou l'inverse ).