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

MFC Discussion :

Création d'une CListView


Sujet :

MFC

  1. #1
    Nouveau candidat au Club
    Inscrit en
    Septembre 2006
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 2
    Par défaut Création d'une CListView
    Bonjour,

    J'ai une petite question concernant le fonctionnement des CListView.

    En fait, c'est peut-être moi qui comprend mal mais après lecture de la doc et consultation de plusieurs site web j'en suis venu à cette conclusion:

    Pour créer une CListView il faut créer une autre classe (CMyListView par exemple) qui hérite de CListView et réécrire la fonction OnInitialUpdate(). Cette fonction serait en charge de créer les colonnes et de configurer les propriétés de la liste.

    Je ne comprend pas pourquoi il faut créer une autre CMyListView car si j'ai 5 listes différentes dans mon application, il me faudra 5 classes différentes (CMyListView1, CMyListView2, ...) ?!? Pourquoi ne peut-on simplement pas créer une variable membre (m_lstViewMyList) dans la fenêtre dans laquel la liste est affichée et simplement appeler les functions m_lstViewMyList.Set...(x) ou m_lstViewMyList.insertColumn(x) ?!?

    Quelqu'un à un exemple d'utilisation d'une CListView autre que ceux de MSDN qui ne sont pas assez clair à mon goût?

    Merci pour vos réponses

  2. #2
    Membre chevronné
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 464
    Par défaut
    Je ne sais pas si CListView doit être dérivée pour être utilisée;

    mais en revanche j'ai bien l'impression que tu confonds classes et instances :

    si tous tes views ont un comportement identique, une seule classe instanciée n fois fera parfaitement l'affaire.

    A l'inverse si chaque view a sa propre fonction, alors il est logique que chacun ait aussi sa propre classe.

  3. #3
    Rédacteur
    Avatar de farscape
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Par défaut
    bonsoir,
    en complément de ce qui a été dit voir la faq:
    http://c.developpez.com/faq/vc/?page...trlInitAndFill

  4. #4
    Nouveau candidat au Club
    Inscrit en
    Septembre 2006
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 2
    Par défaut
    Je comprends bien la différence entre classes et instances, c'est justement là où je trouve que les CListView sont un peu déficiantes.

    Les seules choses qui change entre les listes sont le nombre de colonnes et le nombre d'items dans les listes. CListView n'est pas une classe générique qui permet de personnaliser la liste (ajouter des colonnes par exemple) à partir d'un instanciation de la classe.

    Bon, merci pour vos réponses!

  5. #5
    Rédacteur
    Avatar de farscape
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Par défaut
    salut, Ce que tu dis est valable à partir moment ou tu trouverais la possibilité de paramétrer la CListView à partir d’un objet extérieur à la classe par exemple.
    Sinon si tu as des listview différentes dans le sens les informations ne proviennent pas de la même source etc .., tu seras bien obliger d’avoir deux classes dérivées de CListView pour chaque source de données.
    Autre point chaque listview pourra suivant le sujet avoir des traitements différents à réaliser
    Sur la gestion des messages (clic double clic etc).
    Tu es donc bien obliger d’avoir des classes différentes pour gérer des sujets différents.

    Sauf à faire une super classe listview qui utiliserait le pattern stratégie pour adapter la listview suivant les sujets traités…

Discussions similaires

  1. Réponses: 14
    Dernier message: 09/04/2004, 13h44
  2. [amc designer] création d'une base postgresql
    Par david42 dans le forum PostgreSQL
    Réponses: 9
    Dernier message: 12/03/2004, 11h08
  3. Création d'une base avec IbConsole
    Par Lucien dans le forum Outils
    Réponses: 3
    Dernier message: 02/03/2004, 18h34
  4. création d'une batabse .gdb
    Par jejestyle dans le forum Bases de données
    Réponses: 3
    Dernier message: 23/02/2004, 00h29
  5. [BES] Création d'une variable d'environnement
    Par NGI80 dans le forum Autres
    Réponses: 2
    Dernier message: 17/10/2002, 07h31

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