Remplissage d'une stringgrid

cs_Rankin Messages postés 52 Date d'inscription lundi 29 mars 2004 Statut Membre Dernière intervention 27 avril 2010 - 28 mai 2004 à 12:21
trosy Messages postés 8 Date d'inscription mardi 17 août 2004 Statut Membre Dernière intervention 12 février 2008 - 18 août 2004 à 10:40
Salut, je me posais seulement la question de savoir si dans une stringgrid le texte peut s'afficher sur plusieurs ligne, parce que je souhaite y afficher le contenu d'un query, ce qui marche sans problème mais j'ai un champ string de 255 caractères que je souhaiterais afficher dans une case sans que cela fasse une ligne de 8m de long... J'ai essayé avec #13 pour revenir à la ligne mais ça ne marche pas. Existe-t-il une autre solution ? Merci.

3 réponses

cs_Delphiprog Messages postés 4297 Date d'inscription samedi 19 janvier 2002 Statut Membre Dernière intervention 9 janvier 2013 32
28 mai 2004 à 23:18
A l'aide d'un gestionnaire d'évènements OnDrawCell du composant TStringGrid (voir code de Nono40 et de l'emploi conjugué de la fonction DrawText, on peut y parvenir.

Voici la déclaration de la fonction DrawText (en C):
int DrawText(
    HDC hDC,	// handle to device context 
    LPCTSTR lpString,	// pointer to string to draw 
    int nCount,	// string length, in characters 
    LPRECT lpRect,	// pointer to structure with formatting dimensions  
    UINT uFormat 	// text-drawing flags 
   );


Le SDK décrit les différents paramètres et un, en particulier, va t'intéresser : DT_WORDBREAK.
Breaks words. Lines are automatically broken between words if a word would extend past the edge of the rectangle specified by the lpRect parameter. A carriage return-linefeed sequence also breaks the line.

Maintenant, à toi de jouer 8-)
May Delphi be with you
0
cs_Rankin Messages postés 52 Date d'inscription lundi 29 mars 2004 Statut Membre Dernière intervention 27 avril 2010
29 mai 2004 à 00:31
merci beaucoup, je pense que tes conseils devraient pouvoir m'aider à m'en sortir ;)
0
trosy Messages postés 8 Date d'inscription mardi 17 août 2004 Statut Membre Dernière intervention 12 février 2008
18 août 2004 à 10:40
remplir une string grid
with stringgrid do
begin
for i:=1 to rowcount-1 do
for j:=1 to colcount do
cells[i,j]:='';
end;
sincerement
O.Taggueb
0
Rejoignez-nous