Le centrage (parfaitement) de créer dynamiquement des boutons sur le formulaire?

ceci est mon premier post ici, j'espère donc vous fournir toutes les informations.

Je suis actuellement à l'élaboration d'un menu simple à l'application d'un tableau de contrôle de boutons (à l'aide de la contourner pour tableaux de contrôle proposé par le MSDN) et je vais avoir un moment difficile avec le changement de la taille, la forme et le centrage de l'boutons. Ces boutons sont créés au moment de la compilation (avec des paramètres à partir d'un fichier INI) et mon centrage de l'algorithme semble légèrement les mettre à droite. Je suis l'aide de la touche"".location = new Point(...,...)" méthode, mais après avoir lu à propos de ce qu'il dit les valeurs de localiser les boutons coin supérieur gauche plutôt que le centre, ce qui explique le léger décalage vers la droite.

Mes deux questions sont les suivantes:

Comment puis-je parfaitement au centre de ces boutons au moment de la compilation? J'ai essayé de comptabilité pour la différence en soustrayant de la moitié de la touche de la largeur, mais le bouton de largeur de point et des propriétés semblent être incompatibles et le bouton devient fortement compensé.

Et... mon autre objectif de redimensionner le menu est d'avoir les boutons parfaitement d'élargir et de contrat lorsqu'en cours de re-dimensionnées. Il semble que l'ancrage est inefficace lorsque les boutons sont créés dynamiquement et j'ai donc été forcé d'écrire ratio des algorithmes... Est-il un moyen d'obtenir de l'ancrage du travail?

Voici ce que j'ai dans la charge :

 MyControlArray(i).Location = New Point(CInt(((Width - ButtonWidth) / 2) +_
(ButtonWidth / 2)), CInt((Height - MyControlArray(i).Height) / 2))

J'ai déjà essayé:

New Point(CInt(((Width - ButtonWidth) / 2)), CInt((Height - MyControlArray(i).Height)_
/ 2))

OriginalL'auteur Goat | 2011-07-31