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++ Discussion :

Aide ma treeview ne s'affiche pas


Sujet :

C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Janvier 2010
    Messages
    44
    Détails du profil
    Informations forums :
    Inscription : Janvier 2010
    Messages : 44
    Par défaut Aide ma treeview ne s'affiche pas
    Bonjour,

    un petit souci sur ma première treeview j'ai beau chercher et regarder je vois pas ce qu'il manque elle ne veux vraiment pas s'afficher aidez moi 2 jours que je planche là dessus.

    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
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    #include <windows.h>
    #include <commctrl.h>
    //declaration des fonctions:
    LRESULT CALLBACK procedureFenetrePrincipale(HWND, UINT, WPARAM, LPARAM);
    void CreationTreeview();
    //handle fenetre
    HINSTANCE instance;
    //handle de l'image liste:
    HIMAGELIST himageliste;
    //handle de la treeview:
    HWND htreeview;
    //handle de la libreairie
    HINSTANCE hlibrairie;
    //handle des icones:
    HICON hicone;
    //testouille
    //structure;
    TV_INSERTSTRUCT tvii;
    HTREEITEM hitem;
     
    //fonctions:
    void CreationTreeview(HWND fenetrePrincipale)
    {
     //initialisation de la librairie:
     InitCommonControls();
     //creation de l'image liste:
     himageliste=ImageList_Create(GetSystemMetrics(SM_CXSMICON),GetSystemMetrics(SM_CYSMICON),ILC_COLOR32,4,4);
     ImageList_SetBkColor(himageliste, GetSysColor(COLOR_WINDOW));
     //Creation de la treeview:
     htreeview=CreateWindow(WC_TREEVIEW,"",WS_CHILD|WS_VISIBLE|TVS_HASBUTTONS|TVS_SHOWSELALWAYS|TVS_HASLINES|TVS_LINESATROOT,0,0,0,0,fenetrePrincipale,NULL,instance,NULL);
     //chargement de la librairie shell32:
     hlibrairie=LoadLibrary("shell32.dll");
     //chargement des images
     //variable:
     int a;
     for(a=0;a<=12;a++)
     {
      hicone=LoadIcon(hlibrairie,MAKEINTRESOURCE(a));
      ImageList_AddIcon(himageliste,hicone);
     }
     //liberation de la mémoire:
     FreeLibrary(hlibrairie);
     //verification:
     if(htreeview=NULL)
     {
      MessageBox(NULL, "erreur: creation treeview", NULL, MB_ICONWARNING);
     }
     if(himageliste=NULL)
     {
      MessageBox(NULL, "erreur: chargement des images", NULL, MB_ICONWARNING);
     }
     //recuperation des images pour l'arborescence:
     TreeView_SetImageList(htreeview,himageliste,TVSIL_NORMAL);
     //
                tvii.hInsertAfter = TVI_LAST;
                ZeroMemory(&(tvii.item), sizeof(TV_ITEM));
                tvii.item.mask  = TVIF_TEXT | TVIF_IMAGE  |TVIF_SELECTEDIMAGE | TVIF_PARAM ;
     
                tvii.hParent = TVI_ROOT;
                tvii.item.iImage = 0;
                tvii.item.iSelectedImage = 1;
                tvii.item.pszText = "TEST TREEVIEW";
                hitem = TreeView_InsertItem(htreeview, &tvii);
    }
     
    int WinMain (HINSTANCE cetteInstance, HINSTANCE precedenteInstance,
    LPSTR lignesDeCommande, int modeDAffichage)
    {
        HWND fenetrePrincipale;
        MSG message;
        WNDCLASS classeFenetre;
        instance=cetteInstance;
     
        classeFenetre.style = 0;
        classeFenetre.lpfnWndProc = procedureFenetrePrincipale;
        classeFenetre.cbClsExtra = 0;
        classeFenetre.cbWndExtra = 0;
        classeFenetre.hInstance = NULL;
        classeFenetre.hIcon = LoadIcon(NULL, IDI_APPLICATION);
        classeFenetre.hCursor = LoadCursor(NULL, IDC_ARROW);
        classeFenetre.hbrBackground = (HBRUSH)(1 + COLOR_BTNFACE);
        classeFenetre.lpszMenuName =  NULL;
        classeFenetre.lpszClassName = "classeF";
     
        // On prévoit quand même le cas où ça échoue
        if(!RegisterClass(&classeFenetre)) return FALSE;
     
        fenetrePrincipale = CreateWindow("classeF", "Ma première fenêtre winAPI !", WS_OVERLAPPEDWINDOW,
                                       CW_USEDEFAULT, CW_USEDEFAULT, 400, 300,
                                                       NULL, NULL, cetteInstance, NULL);
        if (!fenetrePrincipale) return FALSE;
     
        ShowWindow(fenetrePrincipale, modeDAffichage);
        UpdateWindow(fenetrePrincipale);
     
     
        while (GetMessage(&message, NULL, 0, 0))
        {
            TranslateMessage(&message);
            DispatchMessage(&message);
        }
        return message.wParam;
    }
     
    LRESULT CALLBACK procedureFenetrePrincipale(HWND fenetrePrincipale, UINT message, WPARAM wParam, LPARAM lParam)
    {
        switch (message)
        {
            case WM_CREATE:
            CreationTreeview(fenetrePrincipale);
                return 0;
     
            case WM_DESTROY:
                PostQuitMessage(0);
                return 0;
     
            default:
                return DefWindowProc(fenetrePrincipale, message, wParam, lParam);
        }
    }

  2. #2
    Membre émérite Avatar de Steph_ng8
    Homme Profil pro
    Doctorant en Informatique
    Inscrit en
    Septembre 2010
    Messages
    677
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Doctorant en Informatique

    Informations forums :
    Inscription : Septembre 2010
    Messages : 677
    Par défaut
    Bonjour.
    Ce serait bien de détailler un peu plus...

    Ta Tree view ne « veut pas s'afficher », soit.
    Mais il y a quelque chose qui s'affiche (même une fenêtre vide) ?
    Ou alors il n'y a absolument rien qui s'affiche, comme si l'application s'arrêtait/plantait juste au moment où elle est lancée ?
    Tu as message d'erreur ? Lequel ?
    ...

  3. #3
    Membre averti
    Inscrit en
    Janvier 2010
    Messages
    44
    Détails du profil
    Informations forums :
    Inscription : Janvier 2010
    Messages : 44
    Par défaut re
    excuse moi pour ce manque de détaille, la fenetre est vide en fait alors que le controle "treeview"devrait s'afficher normalement tout en haut a gauche de la fenetre.

    j'ai regarder si cela venait de mon chargement de la librairie, mais ca n'empecheré pas le texte de l'objet contenu dans le controle de s'afficher.

    egallement les handle de ma liste d'image et de ma treeview ne sont pas nul donc visiblement pas d'echecs de ce coté là.

    je pense avoir tout respecter je suis sur que c'est juste un détail qui doit manquer

Discussions similaires

  1. Réponses: 6
    Dernier message: 25/02/2015, 11h17
  2. [CKEditor] besoin d'aide pour un lien embed affiché dans fckeditor mais pas sur la page du site
    Par cedrus dans le forum Bibliothèques & Frameworks
    Réponses: 0
    Dernier message: 28/09/2012, 23h02
  3. [WD17] Fichier Aide qui ne s'affiche pas
    Par gancau dans le forum WinDev
    Réponses: 7
    Dernier message: 19/09/2012, 08h05
  4. Réponses: 7
    Dernier message: 13/12/2010, 13h13
  5. Réponses: 1
    Dernier message: 26/10/2006, 17h44

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