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

C++Builder Discussion :

Recherche Objet TListBox amélioré..


Sujet :

C++Builder

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    26
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 26
    Par défaut Recherche Objet TListBox amélioré..
    Bonjour,

    Je développe actuellement un projet qui récupère des informations...

    Je souhaite Afficher les informations avec 3 critères dans une listbox.

    Par exemple si l'information est correcte j'affiche dans mon listbox :
    une icône verte suivis de l'information.

    Si l'information est fausse mais qu'elle n'est pas importante j'affiche :
    une icône orange avec l'information derrière.

    Enfin si l'information est fausse et qu'elle présente un danger j'affiche:
    une icône rouge style warning suivis de l'information.

    Je ne trouve aucun objet permettant dans builder d'afficher du texte et des images sur des lignes à la suite...

    Quelqu'un peut il m'éclairer a se sujet ? ou m'envoyer vers autre chose (si cela existe )

    Je vous remercie :p

    EDIT : je possède C++ Builder 6 et CodeGear C++ Builder 2007

  2. #2
    Expert confirmé

    Avatar de pottiez
    Homme Profil pro
    Développeur C++
    Inscrit en
    Novembre 2005
    Messages
    7 152
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur C++
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2005
    Messages : 7 152
    Par défaut
    Essaye avec la TListView, je pense que ça ferais ce que lu veut, c'est comme une TListBox, mais avec la possibilité de mettre plusieurs colonnes, des titres a tes colonnes et surtout une image (icône) au début de chaque ligne

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    26
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 26
    Par défaut
    Merci.. :p

    J'ai fait une recherche sur google et sur le forum sur cette objet mais je ne trouve pas d'aide simple et complète

    D'ailleurs j'ai vu que je pouvais ajouter des progress bar ce qui m'interesse beaucoup :p
    Donc si quelqu'un pouvait m'indiquer comment procéder pour ajouter une icone en début de ligne.. un texte (mais ca je pense que la faq ma renseigner ) et enfin un progress bar

  4. #4
    Membre Expert

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    1 407
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 1 407
    Par défaut
    Salut !

    A moindre coût, ça peut se faire avec son OnDrawItem.
    Ne pas oublier que le canvas pour TListBox est accessible !
    Comme à ce moment là on a la maîtrise du dessin, on peut faire ce que l'on veut.
    Par exemple, on peut prendre le premier caractère des chaînes comme indice pour l'icône et représenter le reste de la chaîne en tant que telle !
    Sur cette base là :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    int CodeIcon; //de 0 à 9... ou de A à Z si plus de 10 images 
    ListBox->Items->Add(IntToStr(CodeIcon) + "Bla bla bla");
    On aura donc à faire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    TListBox *ListBox = (TListBox*)Control;
    AnsiString N = ListBox->Items[Index];
    Graphics::TBitmap *Image;
    //... ou quelque chose de plus intelligent avec un tableau d'Images
    switch(N[1])
        {
        case '1' : Image = ...; break;
        } 
    ListBox->Canvas->Draw(R.Left, R.Top, Image);
    ListBox->Canvas->TextOut(R.Left + ???, R.Top + ???, N.SubString(2, N.Length()));
    A plus !

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    26
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 26
    Par défaut
    Merci pour ta réponse!

    Je ne comprend pas vraiment ce que tu souhaite faire ???

    et quand j'essaye de compiler il ne veut pas de
    TListBox *ListBox = (TListBox*)Control

    Control non défini...

    TListView à l'air vraiment complet mais pas son aide

  6. #6
    Membre éprouvé
    Avatar de Sunchaser
    Homme Profil pro
    OPNI (Objet Programmant Non Identifié)
    Inscrit en
    Décembre 2004
    Messages
    2 059
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : OPNI (Objet Programmant Non Identifié)
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Décembre 2004
    Messages : 2 059
    Par défaut
    Bonjour,

    Ce que Maître henderson a surement suggéré,c'est que cette portion de code est a placer dans le 'OnDrawItem' (évènement) du TListBox, et ainsi il n'est pas possible de ne pas avoir accès a 'Control'...

    Bon courage,
    @+

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

Discussions similaires

  1. Réponses: 6
    Dernier message: 30/06/2008, 10h14
  2. Recherche composant datagridview amélioré
    Par chris81 dans le forum Windows Forms
    Réponses: 2
    Dernier message: 07/03/2008, 09h27
  3. Recherche formule concaténation améliorée
    Par clemasson dans le forum Excel
    Réponses: 2
    Dernier message: 19/12/2007, 17h23
  4. [recherche] idée d'amélioration
    Par franculo_caoulene dans le forum Evolutions du club
    Réponses: 8
    Dernier message: 08/12/2007, 12h33
  5. recherche code pour améliorer mon site
    Par ALTINEA dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 07/08/2007, 18h05

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