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 :

Éléments de couleurs différentes dans un CheckListBox


Sujet :

Composants VCL Delphi

  1. #1
    Membre averti
    Inscrit en
    Janvier 2003
    Messages
    35
    Détails du profil
    Informations forums :
    Inscription : Janvier 2003
    Messages : 35
    Par défaut Éléments de couleurs différentes dans un CheckListBox
    Comment avec le composant CheckLisBox avoir une couleur differente a chaque nouveau checkbox(couleur defini par l'utilisateur)
    (la propriete "font" met la meme couleur a touts les checkbox)....

  2. #2
    Expert confirmé

    Avatar de Nono40
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2002
    Messages
    8 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France, Loir et Cher (Centre)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Industrie

    Informations forums :
    Inscription : Mai 2002
    Messages : 8 640
    Par défaut
    Comme d'habitude, il faut utiliser OnDrawItem. Il y a un exemple pour un listBox normal deux lignes au dessus :
    http://www.developpez.net/forums/viewtopic.php?t=89916
    Delphi :
    La F.A.Q. , 877 réponses à vos questions !
    264 sources à consulter/télécharger !

  3. #3
    Membre averti
    Inscrit en
    Janvier 2003
    Messages
    35
    Détails du profil
    Informations forums :
    Inscription : Janvier 2003
    Messages : 35
    Par défaut
    Je viens de me rendre compte d'un probleme: je ne peut pas utiliser la propriete "checked" du CheckBox(pour l'avoir coché) sinon les CheckBox existant reprennent tous la meme couleur voici mon code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
     
    procedure TForm1.FormCreate(Sender: TObject);
    begin
    	CheckListBox1.Style := lbOwnerDrawFixed;
    end;
     
    procedure TForm1.CheckListBox1DrawItem(Control: TWinControl;
      Index: Integer; Rect: TRect; State: TOwnerDrawState);
    begin
    	with Control as TCheckListBox do
    	begin
    		canvas.FillRect(Rect);
    		canvas.Font.Color := TColor(items.Objects[Index]);
    		canvas.TextOut(Rect.Left+2,Rect.Top, Items[Index]);
    	end;
    end;
     
    procedure TForm1.Button1Click(Sender: TObject);
    var
    	PlanningName: String;
    	PlanningColor: TColor;
    begin
        planningcolor := clblack;
    	InputQuery('A Faire', 'Entrez un nom pour votre planning', PlanningName);
    	if ColorDialog1.Execute then
    		PlanningColor := ColorDialog1.Color;
    	CheckListBox1.Items.AddObject(PlanningName, Pointer(PlanningColor));
     	CheckListBox1.Checked[CheckListBox1.Count - 1] := true; //probleme ici !!!!!!
    end;
    Quelqu'un à une idée??? .........

  4. #4
    Membre averti
    Inscrit en
    Janvier 2003
    Messages
    35
    Détails du profil
    Informations forums :
    Inscription : Janvier 2003
    Messages : 35
    Par défaut
    Je me pose une question: pourquoi le probleme de la propriete "checked" perciste chez moi alors qu' a mon ecole il n'existe pas(le probleme)
    (j'utilise delphi7 et windows 98 se, al'ecole delphi7 et windows xp)....

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    43
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 43
    Par défaut
    Bizarre en effet ...

    Tu as essayé de remplacer 'Pointer' par TObject à tout hazard ?

  6. #6
    Membre averti
    Inscrit en
    Janvier 2003
    Messages
    35
    Détails du profil
    Informations forums :
    Inscription : Janvier 2003
    Messages : 35
    Par défaut
    Phenomene paranormale: le code ci dessus c'est mis à fonctionner normalement entre deux compilations et cela sans aucune modification, je n'y comprend rien...........

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 28/05/2009, 14h44
  2. Réponses: 2
    Dernier message: 10/04/2009, 06h03
  3. Réponses: 2
    Dernier message: 27/06/2008, 14h28
  4. Réponses: 4
    Dernier message: 02/07/2006, 21h00
  5. Ecrire dans une CEdit avec deux Couleurs Différentes
    Par yoyothebest dans le forum MFC
    Réponses: 1
    Dernier message: 25/03/2006, 19h09

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