Précédent   Forum du club des développeurs et IT Pro > C et C++ > Outils pour C & C++ > C++Builder
C++Builder Environnement de développement RAD C++Builder. Avant de poster -> F.A.Q C++Builder, Sources C++Builder
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse
 
Outils de la discussion
Publicité
'
Vieux 27/02/2013, 18h57   #1
dz_robotix
Membre confirmé
 
Inscription : juin 2006
Messages : 381
Détails du profil
Informations forums :
Inscription : juin 2006
Messages : 381
Points : 233
Points : 233
Envoyer un message via Yahoo à dz_robotix
Par défaut modifier Couleur de mot dans une LitsBox

Bonjour,
Est-il possible de modifier la couleur d'un mot (par exemple) qui est dans une ligne, d'un teste qui est dans une ListBox ?

par défaut le Font du texte est Black, le Color de la ListBox est blanc. Imginer qu'on cherche un mot (xxx) on modifie seulement sa couleur dans la ListBox.

Merci.
__________________
« Aucun homme ne peut rien vous révéler sinon ce qui repose déjà à demi endormi dans l'aube de votre connaissance»

« No man can reveal to you aught but that which already lies half asleep in the dawning of your knowledge »_(¯`·.__-Alg3ri4nH4ck3r-__.·´¯)_
dz_robotix est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/02/2013, 20h26   #2
ShaiLeTroll
Expert Confirmé Sénior
 
Avatar de ShaiLeTroll
 
Homme
Développeur C++\Delphi
Inscription : juillet 2006
Messages : 9 261
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 32
Localisation : France

Informations professionnelles :
Activité : Développeur C++\Delphi
Secteur : High Tech - Électronique et micro-électronique

Informations forums :
Inscription : juillet 2006
Messages : 9 261
Points : 13 373
Points : 13 373
Dans un TMemo, tu aurais pu jouer sur SelText
Dans un TRichEdit, tu aurais pu jouer sur les Attributes
Dans un TListBox, ne ne vois que OnDrawItem
__________________
Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !
Attention Troll Méchant !
"Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
L'ignorance n'excuse pas la médiocrité !

L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
Il faut avoir le courage de se tromper et d'apprendre de ses erreurs

Halte à la ségrégation des Cinémas, VO sur Paris, VF en Banlieue, Abonnement résilié !
ShaiLeTroll est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/02/2013, 21h50   #3
Freeze
Membre habitué
 
Avatar de Freeze
 
Homme
Inscription : octobre 2002
Messages : 126
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Loire Atlantique (Pays de la Loire)

Informations forums :
Inscription : octobre 2002
Messages : 126
Points : 148
Points : 148
Bonsoir,

Oui, oui, c'est possible en surchargeant l'évènement OnDrawItem et en mettant le style de ta TListBox à lbOwnerDrawFixed;

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
void __fastcall TFEssaiTable::ListBoxDrawItem(TWinControl *Control,
      int Index, const TRect &Rect, TOwnerDrawState State)
{
   TCanvas *pCanvas = (dynamic_cast<TListBox *>(Control))->Canvas;
   pCanvas->Brush->Color=clWindow;
   pCanvas->Font->Color=clBlack;
 
   if (Index==2)
      pCanvas->Font->Color=clRed;
 
   pCanvas->FillRect(Rect);
   pCanvas->TextOut(Rect.Left, Rect.Top, (dynamic_cast<TListBox *>(Control))->Items->Strings[Index]);
}
Dans ce cas, à chaque rafraichissement, je nettoie la zone, j'écris le texte correspondant, mais si l'Index est égale 2, je l'écris en rouge.

Bon courage
Freeze est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/02/2013, 22h11   #4
blondelle
Rédacteur
 
Avatar de blondelle
 
Homme
Inscription : mars 2006
Messages : 2 686
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations forums :
Inscription : mars 2006
Messages : 2 686
Points : 3 461
Points : 3 461
Salut dz_robotix
C'est dans la FAQ ici
Comme Freeze l'a ecrit pense a mettre Style a lbOwnerDrawFixed, sinon ca ne fonctionne pas.
__________________
--
Plutot que d'essayer de réinventer la roue, apprenons à nous en servir.
  • N'oubliez pas de consulter la FAQ, la recherche sur le Forum.
  • N'oubliez pas que l'aide BCB existe, elle s'affiche sous simple pression de la touche F1.
  • N'oubliez pas de mettre : Bouton en bas de la page ou menu Outils de la discussion -> Mettre Résolu.
  • Mes Tutos http://jp-blondelle.developpez.com/
blondelle est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse
Outils de la discussion

Navigation rapide


Fuseau horaire GMT +2. Il est actuellement 09h43.


 
 
 
 
Partenaires

Hébergement Web