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
Version imprimable
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:
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. :calim2: :koi: