XgaletteX
Messages postés102Date d'inscriptionsamedi 14 mai 2005StatutMembreDernière intervention12 août 2005
-
16 juin 2005 à 13:00
ni69
Messages postés1418Date d'inscriptionsamedi 12 juin 2004StatutMembreDernière intervention 5 juillet 2010
-
16 juin 2005 à 15:10
Bonjour,
je voulai savoir comment l'on pour adapter la taille d'un bouton a son contenu, c'est à dire au caption qu'il a ( ce caption étant variable)?
Et aussi pour un stringgrid, comment on peut adapter la taille de la grille au nombre de cellules( ce nombre étant variable)., c'est à dire que je veux, si j'ai par ex 10*10 cellules pouvoir voir toutes ces cellules lors de l'execution.
ni69
Messages postés1418Date d'inscriptionsamedi 12 juin 2004StatutMembreDernière intervention 5 juillet 201012 16 juin 2005 à 14:49
Pour la dimension du bouton :
Je conseille plutôt d'utiliser la fonction TextWidth( ) qui renvoie la
taille du texte en pixels dans la police en cours sur un canvas plutôt
que la méthode de sim51 : en effet, un 'i' n'aura pas la même largeur
qu'un 'm'
Button1.Width := Canvas.TextWidth('Mon nouveau Texte')+20; // +20 pour laisser un espace à droite et à gauche du texte
Le +4 s'explique par la prise en compte dans le calcul de la largeur de la bordure quand elle est normale ( bsSingle ) . Si on ne veut pas de bordure, autrement dit avec la propriété BorderStyle à bsNone, on peut faire plus simplement :
cs_sim51
Messages postés240Date d'inscriptiondimanche 31 octobre 2004StatutMembreDernière intervention31 décembre 20062 16 juin 2005 à 13:46
Salut,
Alors pour ton bouton c'est simple, tu peux connaitre la taille du text de ton bouton : length(bouton.caption) , de plus si tu connais la taille de ta police tu peux connaitre la taille d'un caractère et donc dimensionner la taille de ton bouton :
bouton.width:=longueur_caractere*length(bouton.caption)
De même pout ton stringGrid, tu peux connaitre le nombre le nombre de colonne et de ligne ( propriétés rowcont et colcount ) ainsi que la taille de chque colonne et ligne ( n'oublie pas la longueur des trait qui séparent les cellules ) et en applicant le même principe que pour le bouton, tu peux changer la taille de ton stringgrid pour qu'il apparaisse en entier.
stringgrid.width:=stringgrid.colcount*(longueur_colonne + stringgrid.gridlinewidth)
Bonne continuation.
N'oubliez pas de cliquer sur réponse acceptée si la réponse vous convient !!!
XgaletteX
Messages postés102Date d'inscriptionsamedi 14 mai 2005StatutMembreDernière intervention12 août 2005 16 juin 2005 à 15:03
G fait ce que tu viens d'écrire, mais le problème comme je l'ai dis un peu plus haut c'est la taille de la grille, avec gridwidth et gridheigth, coment on peut modifier ses valeurs car il apparait un blanc.