Question

Je crée une application dans laquelle je fais glisser des widgets de boutons dans un panneau. Je souhaite avoir une grille visible dans le panneau où je laisse les widgets pour que ceux-ci soient alignés sur la grille.

Je suppose qu'il n'est pas difficile de créer une grille où les carrés font 15 x 15 pixels à l'aide d'un GridBagSizer (puisque les widgets s'étendent sur plusieurs cellules), mais comment peut-on créer dynamiquement le nombre de carrés en fonction de la taille du panneau ?

Dois-je calculer le nombre de carrés dont j'ai besoin pour remplir le panneau à l'init et à chaque redimensionnement?

Utilisation de python et wxpython btw.

Oerjan Pettersen

Était-ce utile?

La solution

N'utilisez pas de sizer du tout pour cela. Il suffit de positionner les boutons vous-même, avec l’arrondi des coordonnées qui vous convient. (en utilisant wxWindow :: SetSize () ).

(L'intérêt d'un sizer est que les boutons seront déplacés et / ou redimensionné lorsque la fenêtre est redimensionnée. Comme vous ne voulez pas ce comportement, vous ne devriez pas utiliser de sizer.)

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top