bonjour
comment je peut sauter la ligne dans une cellule d'un stringgrid
je utilise #13 dans l'instruction suivante mais sa ne marche pas:
stringgrid1.cells[2.3]:=dm.tenseignantnom.Value+#13+'mariee';
mersi d'avance
bonjour
comment je peut sauter la ligne dans une cellule d'un stringgrid
je utilise #13 dans l'instruction suivante mais sa ne marche pas:
stringgrid1.cells[2.3]:=dm.tenseignantnom.Value+#13+'mariee';
mersi d'avance
Bonjour
Il n'y a aucun moyen simple de le faire. Il faut utiliser l'événement OnCellDraw et de dessiner sur le canvas. Un exemple simple: (exemple complet ici.)Le plus cocasse dans l'histoire est que si l'on est on mode édition cela marche. Un Ctrl-Entrée nous amène à la ligne suivante. Mais dès que l'on valide la cellule le texte est redessiné sur une ligne.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 procedure TForm9.StringGrid1DrawCell(Sender: TObject; ACol, ARow: Integer; Rect: TRect; State: TGridDrawState); begin with sender as TStringGrid do begin Canvas.FillRect(rect); DrawText(Canvas.Handle, PChar(Cells[ACol,ARow]), -1, Rect, DT_LEFT); end; end;
De même si l'on fait: stringgrid1.cells[1,1]:='Ligne 1'+#13#10+'Ligne 2', l'affichage se fait sur une ligne. Mais dès que l'on édite la cellule, on retrouve le formatage attendu.
À +
Pat.
Si vous avez trouvé chaussure à votre pied... euh solution à votre problème, n'oubliez pas de clôturer le sujet en le marquant comme:
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
Windows 8.1, Lazarus 1.8.2 SVN 57369 FPC 3.0.4 x86_64-win64-win32/win64
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