cs_dk
Messages postés20Date d'inscriptionmardi 16 décembre 2003StatutMembreDernière intervention19 mai 2006
-
4 févr. 2004 à 22:46
cs_dk
Messages postés20Date d'inscriptionmardi 16 décembre 2003StatutMembreDernière intervention19 mai 2006
-
4 févr. 2004 à 23:21
bonjour je sais que cette question a deja ete posée mainte fois sur les forums mais malheureusement les bouts de codes que g pu voir n'ont po ete assez explicite pour que je comprenne comment faire pour mettre en couleur certaine phrase que j'ajoute dans une tlisbox pour mon chat
alors voila ce ke je fais moi
procedure TForm1.ListBox1DrawItem(Control: TWinControl; Index: Integer;
Rect: TRect; State: TOwnerDrawState);
begin
with (control as TlistBox).Canvas do
fillrect(rect);
case couleur of
1:listbox1.Canvas.Font.Color:=clred;
2:listbox1.Canvas.Font.Color:=clgreen;
3:listbox1.Canvas.Font.Color:=clblue;
4:listbox1.Canvas.Font.Color:=clyellow;
else listbox1.Canvas.Font.Color:=clblack;
end;
TextOut(Rect.Left+1, Rect.Top+1,(control as TlistBox).Items[index]);
end;
mais bon voila il me dit qu'a la ligne de textout il ya une erreur d'incompatibilité string et integer apparement a cause de index et comme je capte po grand chose de ce bout de code je sais po trop quoi modifier alors merci de votre reponse
cs_dk
Messages postés20Date d'inscriptionmardi 16 décembre 2003StatutMembreDernière intervention19 mai 2006 4 févr. 2004 à 23:12
bon et en + je voudrais dire que sur delpifr g vu qu'il fallait mettre la propriete style de listbox1 a lbOwnerDrawFixed
et sur dotre site comme sur http://homepage.oma.be/md/trucs.html on dit de la mettre sur lbOwnerDrawVariable pourtant a chaque fois on parle bien de la procedure Ondrawitem
...
cs_dk
Messages postés20Date d'inscriptionmardi 16 décembre 2003StatutMembreDernière intervention19 mai 2006 4 févr. 2004 à 23:21
nvlle update du post ben en fait ca marche car j'avais oublié mon begin apres "with (control as TlistBox).Canvas do'
mais voila par exemple si je met "couleur:=1" a un certain moment c tout le tlistbox qui devient rouge d'ou je vois qu'il faut jouer sur l'index pour afficher des couleurs a differentes lignes comme si je mettais ceci
couleur de tlistbox
Répondre à ce message - Imprimer ce message
--------------------------------------------------------------------------------
bonjour je sais que cette question a deja ete posée mainte fois sur les forums mais malheureusement les bouts de codes que g pu voir n'ont po ete assez explicite pour que je comprenne comment faire pour mettre en couleur certaine phrase que j'ajoute dans une tlisbox pour mon chat
alors voila ce ke je fais moi
procedure TForm1.ListBox1DrawItem(Control: TWinControl; Index: Integer;
Rect: TRect; State: TOwnerDrawState);
begin
with (control as TlistBox).Canvas do
fillrect(rect);
case index of
1:listbox1.Canvas.Font.Color:=clred;
2:listbox1.Canvas.Font.Color:=clgreen;
3:listbox1.Canvas.Font.Color:=clblue;
4:listbox1.Canvas.Font.Color:=clyellow;
else listbox1.Canvas.Font.Color:=clblack;
end;
TextOut(Rect.Left+1, Rect.Top+1,(control as TlistBox).Items[index]);
end;
mais comment peut on faire si on veut q'une phrase specifique soit mise en une couleur donnée?
Par exemple chaque fois que je veux afficher "tentative de connection avec..." je veux qu'il le soit en bleu comment dois je mis prendre pour controler cela
un chtit exemple m'aiderais bcp en attendant je continue a chercher merci d'avance pour votre aide
dk2089