IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Composants VCL Delphi Discussion :

Changement de couleur d'une ligne dans un Memo


Sujet :

Composants VCL Delphi

  1. #1
    Membre confirmé
    Homme Profil pro
    Directeur de projet
    Inscrit en
    Février 2006
    Messages
    537
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : Belgique

    Informations professionnelles :
    Activité : Directeur de projet
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2006
    Messages : 537
    Points : 460
    Points
    460
    Par défaut Changement de couleur d'une ligne dans un Memo
    Bonsoir,
    je désire savoir si il est possible de modifier la couleur de certaines lignes dans un Memo.
    Exemple: Memo1.Lines.Add('Ok'); => en noir
    Memo1.Lines.Add('Pas Ok'); => en Rouge

    D'avance merci,
    André
    Ils ne savaient pas que c'était impossible, alors ils l'ont fait !

  2. #2
    Membre confirmé

    Inscrit en
    Novembre 2002
    Messages
    744
    Détails du profil
    Informations forums :
    Inscription : Novembre 2002
    Messages : 744
    Points : 500
    Points
    500
    Par défaut
    salut,
    Pour un Tmemo j'en doute forcement du moins facilement !

    Pourquoi ne pas utiliser un TRichedit si tu parle de la couleur de la police.

    Sinon tu as aussi un très bon éditeur qui permet une tonne de choses et qui se substitue très facilement à un Tmemo, c'est le composant SynEdit chez "Sourceforge".
    Avec ce composant tu peux définir autant de couleur de police de ligne et de fond de ligne que tu veux.
    Bye et bon code...

    Ce n'est pas tant l'aide de nos amis qui nous aide , mais notre confiance dans cette aide .

  3. #3
    Membre confirmé
    Homme Profil pro
    Directeur de projet
    Inscrit en
    Février 2006
    Messages
    537
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : Belgique

    Informations professionnelles :
    Activité : Directeur de projet
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2006
    Messages : 537
    Points : 460
    Points
    460
    Par défaut
    Merci pour ta réponse petitcoucou31,
    je viens d'installer SynEdit, il me reste à comprendre comment je dois faire.

    André
    Ils ne savaient pas que c'était impossible, alors ils l'ont fait !

  4. #4
    Membre confirmé
    Homme Profil pro
    Directeur de projet
    Inscrit en
    Février 2006
    Messages
    537
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : Belgique

    Informations professionnelles :
    Activité : Directeur de projet
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2006
    Messages : 537
    Points : 460
    Points
    460
    Par défaut
    Ben j'suis peut-etre naze mais je ne m'en sort pas avec synEdit.
    Je souhaite que quand dans mon texte il y a "ceci doit etre en rouge", cette phrase soit en rouge le reste étant en noir.

    André
    Ils ne savaient pas que c'était impossible, alors ils l'ont fait !

  5. #5
    Membre chevronné

    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    1 519
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 1 519
    Points : 2 153
    Points
    2 153
    Billets dans le blog
    1
    Par défaut
    Bonjour,

    je ne pense pas que le SynEdit soit adapté à ce que tu veux faire. Comme son nom l'indique (SYNtaxe EDITor) c'est surtout un composant pour fournir un affichage colorisé d'un texte. Typiquement une coloration syntaxique d'un code source ou d'une requête SQL.

    Cependant si ton but n'est que d'afficher certaines parties en rouge de temps à autre alors clairement il vaut mieux t'orienter vers le TRichEdit et comprendre son fonctionnement.
    La FAQ - les Tutoriels - Le guide du développeur Delphi devant un problème

    Pas de sollicitations techniques par MP -

  6. #6
    Membre confirmé
    Homme Profil pro
    Directeur de projet
    Inscrit en
    Février 2006
    Messages
    537
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : Belgique

    Informations professionnelles :
    Activité : Directeur de projet
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2006
    Messages : 537
    Points : 460
    Points
    460
    Par défaut
    Merci,
    effectivement je suis revenu au RichEdit et ça fonctionne avec le code suivant:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    RichEdit1.SelAttributes.Color:= clRed;
    Encore merci pour votre aide,

    André
    Ils ne savaient pas que c'était impossible, alors ils l'ont fait !

  7. #7
    Membre expérimenté

    Homme Profil pro
    Inscrit en
    Mars 2004
    Messages
    897
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2004
    Messages : 897
    Points : 1 561
    Points
    1 561
    Par défaut
    Pourquoi aller chercher midi à quatorze heures. Un simple TRichEdit suffit pour répondre à ton problème.

    Un TRichEdit et un TButton sur une fiche.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    type
      TForm1 = class(TForm)
        RichEdit1: TRichEdit;
        Button1: TButton;
        procedure Button1Click(Sender: TObject);
      private
        { Déclarations privées }
        function CurrText: TTextAttributes;
      public
        { Déclarations publiques }
      end;
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    implementation
    {$R *.dfm}
     
    procedure TForm1.Button1Click(Sender: TObject);
    begin
      CurrText.Color := clRed;
    end;
     
    function TForm1.CurrText: TTextAttributes;
    begin
      Result := RichEdit1.SelAttributes;
    end;
    Tu sélectionnes une partie du texte puis en cliquant sur le button la couleur du texte sélectionné passe en rouge.
    Pensez à utiliser les tags dans le titre.
    Avant de poser une question reportez-vous à la FAQ Delphi
    Respectez les règles du forum.

  8. #8
    Membre confirmé

    Inscrit en
    Novembre 2002
    Messages
    744
    Détails du profil
    Informations forums :
    Inscription : Novembre 2002
    Messages : 744
    Points : 500
    Points
    500
    Par défaut
    salut

    En effet pour la couleur de la police un trichedit suffit. mais peut on simplement changer la couleur de fond de la ligne ( surlignage ) ?

    Juste a titre d'info pour surligner une ligne avec SynEdit, dans l'événement SpecialLineColor

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    procedure TForm1.SyntaxEditSpecialLineColors(Sender: TObject;
      Line: Integer; var Special: Boolean; var FG, BG: TColor);
    var i: integer ;
    begin
         if condition= ... then
              begin
                 special:=true;
                 FG:=clwhite; // color de la police
                 BG:=clred;    // color de fond de ligne
              end;
         end;
    end;
    Bye et bon code...

    Ce n'est pas tant l'aide de nos amis qui nous aide , mais notre confiance dans cette aide .

  9. #9
    Membre confirmé
    Homme Profil pro
    Directeur de projet
    Inscrit en
    Février 2006
    Messages
    537
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : Belgique

    Informations professionnelles :
    Activité : Directeur de projet
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2006
    Messages : 537
    Points : 460
    Points
    460
    Par défaut
    Encore merci à vous tous
    Résolu.

    André
    Ils ne savaient pas que c'était impossible, alors ils l'ont fait !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [DataGridView] Bug dans le changement de couleur d'une ligne
    Par AsPrO dans le forum Windows Forms
    Réponses: 8
    Dernier message: 22/07/2008, 23h38
  2. Changement de couleur d'une ligne d'un stringgrid/D7 perso
    Par jer64 dans le forum Composants VCL
    Réponses: 29
    Dernier message: 11/01/2006, 22h53
  3. Changer la couleur d'une ligne dans un DBGrid
    Par fba dans le forum Composants VCL
    Réponses: 5
    Dernier message: 24/10/2005, 20h30
  4. Comment donne une couleur a une ligne dans un DBGrid
    Par samy84s dans le forum Composants VCL
    Réponses: 5
    Dernier message: 14/09/2005, 23h22
  5. Réponses: 8
    Dernier message: 14/05/2004, 11h18

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo