bonjour
les Uicontrols ont comme prent lepanel et les element graphiques (lignes, texte rectangles) ont comme parent un axe qui a lui même comme parent le panel.
Avec cela pour positionner de façon correcte les uicontrol et les éléments graphiques cen'es tpas toujours évident.
J'ai pris l'habiture de mettre les panel en units normalized, puis de mettre un axe qui couvre tout le panel avec 'position' ,[0 0 1 1].
ensuite je définit les limites 'Xlim'; [0 Xmax] et 'Ylim'; [0 Ymax] .
cela fait si je veux un contrôle aux coordonnées [Xcontrole, Ycontrole, L,H], (coordonnée de mon axe)
alors je mets h=uicontrole('style',..., 'position',[Xcontrole/Xmax, Ycontrole/Ymax, L/Xmax,H/Ymax],...) avec comme parent le panel
Jusqu'à présent cela fonctionnait et aujourd'hui non la position de mes controles est visiblement en pixel et je ne comprends pas pourquoi.
dans le code ci joint la ligne 19 est en commentaires, mais il me faut l'activer pour obtenir le résultat attendu (uicontrole alignés avec les textes (voir la figure en figure.png).
je ne comprends pas pourquoi mon panel étant en 'normalized', les coordonnéers des contrôles restent en pixel.
hypothèse : windows 11 car jusqu'à présent je travaillais avec windows 10 ou inférieur.
une idée ? une suggestion ?
Merci
Partager