Bonjour à tous, je souhaiterais savoir s'il est possible d'afficher plusieurs lignes dans un cellule de StringGrid?
Merci
Xavier
Bonjour à tous, je souhaiterais savoir s'il est possible d'afficher plusieurs lignes dans un cellule de StringGrid?
Merci
Xavier
Oui
mais il faut les dessiner avec le canvas sur l'événement OnDrawCell.
Encore un peu de lumière car je n'arrive pas à comprendre.
Merci
Xavier
Bonsoir,
C'est vrai que même avec l'indication, il restait du boulot ...
Voilà un bout de code qui devrait fonctionner :
A placer dans l'événement OnDrawCell de la Grille.
C'est un peu long, car ça centre le texte en abscisse ...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 AnsiString s = StringGrid1->Cells[Col][Row]; int a = s.Pos("#"); if (a) { TRect R = Rect; AnsiString t = s.SubString(1, a - 1); R.Bottom = (R.Top + R.Bottom) / 2; StringGrid1->Canvas->TextRect(R, (R.Right + R.Left - StringGrid1->Canvas->TextWidth(t)) / 2, (R.Top + R.Bottom - StringGrid1->Canvas->TextHeight(t)) / 2, t); t = s.SubString(a+1, s.Length()-a); R.Top = R.Bottom; R.Bottom = Rect.Bottom; StringGrid1->Canvas->TextRect(R, (R.Right + R.Left - StringGrid1->Canvas->TextWidth(t)) / 2, (R.Top + R.Bottom - StringGrid1->Canvas->TextHeight(t)) / 2, t); }
Evidemment, tu mets ce que tu veux pour indiquer ton passage à la ligne ... (à la place du "#")
Mathieu
P.S. N'oublie pas [RESOLU] si c'est bon ...
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager