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

Access Discussion :

Arborescence style Explorateurs Windows


Sujet :

Access

  1. #1
    Nouveau membre du Club
    Inscrit en
    Août 2004
    Messages
    51
    Détails du profil
    Informations forums :
    Inscription : Août 2004
    Messages : 51
    Points : 34
    Points
    34
    Par défaut Arborescence style Explorateurs Windows
    Bonjour,
    Est-il possible avec Accès, d'afficher et surtout de modifier une Arborescence du style Explorateurs Windows :

    Pour exemple:
    On Affiche la liste de Sports, ainsi que les épreuves propres a chaques sports
    On doit pouvoir rajouter/supprimer des épreuves, modifier un sport etc...

    Si un exemple était dispo, se serait génial

    D'avance Merci

  2. #2
    Membre éprouvé
    Avatar de keita
    Homme Profil pro
    Inscrit en
    Novembre 2002
    Messages
    881
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations forums :
    Inscription : Novembre 2002
    Messages : 881
    Points : 1 121
    Points
    1 121

  3. #3
    Nouveau membre du Club
    Inscrit en
    Août 2004
    Messages
    51
    Détails du profil
    Informations forums :
    Inscription : Août 2004
    Messages : 51
    Points : 34
    Points
    34
    Par défaut
    Ok, je vois bien le principe, mais j'ai un peu de mal à le mettre en application au sein de mon projet
    Aurais tu des explications un peu plus détaillés ?

    Dans cet exemple, je dois bien me créer 2 tables (Clients & Employés) dans mon appli Access ?
    Et, comment activer la "référence Microsoft ActiveX Data Object

    D'avance merci

  4. #4
    Expert éminent sénior
    Avatar de Dolphy35
    Homme Profil pro
    Responsable Systemes d'Information
    Inscrit en
    Octobre 2004
    Messages
    4 373
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Responsable Systemes d'Information
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2004
    Messages : 4 373
    Points : 11 218
    Points
    11 218
    Par défaut
    Salut,

    Dans l'éditeur VB, tu clic sur Outils -> Références tu le cherche dans la liste et tu le coche.

    @+

  5. #5
    Nouveau membre du Club
    Inscrit en
    Août 2004
    Messages
    51
    Détails du profil
    Informations forums :
    Inscription : Août 2004
    Messages : 51
    Points : 34
    Points
    34
    Par défaut
    Ok, ça c'était bon, mais j'ai une erreur de compil "Type défini par l'utilisateur non défini" sur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
            'déclaration des variables
            Dim x As Node
    :

  6. #6
    Expert éminent sénior
    Avatar de Dolphy35
    Homme Profil pro
    Responsable Systemes d'Information
    Inscrit en
    Octobre 2004
    Messages
    4 373
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Responsable Systemes d'Information
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2004
    Messages : 4 373
    Points : 11 218
    Points
    11 218
    Par défaut
    Désolé j'avais mal compris ta question.

    Tu as pris la plus grande version ?

    Sinon met le en commentaire et teste le reste du code.

    @+

  7. #7
    Nouveau membre du Club
    Inscrit en
    Août 2004
    Messages
    51
    Détails du profil
    Informations forums :
    Inscription : Août 2004
    Messages : 51
    Points : 34
    Points
    34
    Par défaut
    Quand tu dit: Tu as pris la plus grande version ? tu veux parler du code proposé ici ?
    http://access.developpez.com/sources...=frms#treeview

    Mettre en commentaire la variable X va m'être difficile car elle est utilisée dans la suite du code...
    En fait, le type de déclaration "As Node" n'est pas connu dans mon appli. Est-ce normal : je dois oublier kekchose

  8. #8
    Expert éminent sénior
    Avatar de Dolphy35
    Homme Profil pro
    Responsable Systemes d'Information
    Inscrit en
    Octobre 2004
    Messages
    4 373
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Responsable Systemes d'Information
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2004
    Messages : 4 373
    Points : 11 218
    Points
    11 218
    Par défaut
    La version dnt je te parles est celle de la référence à cocher. Sinon tu peux utiliser une variable sans la déclarer en ne mettant pas Option Explicit
    en haut dans ton module.

    @+

  9. #9
    Nouveau membre du Club
    Inscrit en
    Août 2004
    Messages
    51
    Détails du profil
    Informations forums :
    Inscription : Août 2004
    Messages : 51
    Points : 34
    Points
    34
    Par défaut
    Microsoft ActiveX Data Objects 2.1 Library
    msado20.tlb
    msado21.tlb
    msado25.tlb
    msado26.tlb
    msado27.tlb
    Tous du 03/08/2004 22:21 sous
    C:\Program Files\Fichiers communs\System\ado\

  10. #10
    Expert éminent sénior
    Avatar de Dolphy35
    Homme Profil pro
    Responsable Systemes d'Information
    Inscrit en
    Octobre 2004
    Messages
    4 373
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Responsable Systemes d'Information
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2004
    Messages : 4 373
    Points : 11 218
    Points
    11 218
    Par défaut
    re,

    je possède la dll Microsoft ActiveX Data Objects 2.7 Library je ne sais pas si c'est ton soucis je ne ma suis pas encore penché sur le TreeView

    @+ [/b]

  11. #11
    Nouveau membre du Club
    Inscrit en
    Août 2004
    Messages
    51
    Détails du profil
    Informations forums :
    Inscription : Août 2004
    Messages : 51
    Points : 34
    Points
    34
    Par défaut
    ma foi, je veux bien essayer, si cela peu résoudre mon soucis...
    Mais comment faire pour se la procurer :

  12. #12
    Expert éminent sénior
    Avatar de Dolphy35
    Homme Profil pro
    Responsable Systemes d'Information
    Inscrit en
    Octobre 2004
    Messages
    4 373
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Responsable Systemes d'Information
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2004
    Messages : 4 373
    Points : 11 218
    Points
    11 218
    Par défaut
    Peut être sur le site de Microsoft

    @+

  13. #13
    Membre habitué
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    265
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 265
    Points : 181
    Points
    181
    Par défaut
    Les treeviews, c'est bien pour afficher les données. Si tu veux
    modifier les données, tu peux utiliser l'évevennements DblClick sur le treeview. Ou afficher le détail des noeuds du treeview dans un listview. (ca c'est une arborescence windows: 2 cadres un a gauhe qui est un treeview et a droite un listview). Et donner la possibilité de saisir des données dans un champ texte après Dblclick sur un élément du listview.

    J'espère que j'ai pu t'aider un petit peu.

  14. #14
    Membre habitué
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    265
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 265
    Points : 181
    Points
    181
    Par défaut
    Mettre en commentaire la variable X va m'être difficile car elle est utilisée dans la suite du code...
    En fait, le type de déclaration "As Node" n'est pas connu dans mon appli. Est-ce normal je dois oublier kekchose

    Hum. Tu as bien inséré un treeview sur ton formulaire avant de tester le code du treeview? (car Node est un noeud d'un treeview)

  15. #15
    Membre habitué
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    265
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 265
    Points : 181
    Points
    181
    Par défaut commentaires sur le code du treeview
    Bon je t'explique un peu comment ca fonctionne :

    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
    Dim WithEvents rsCli As ADODB.Recordset
    Dim WithEvents rsEmp As ADODB.Recordset
    Dim WithEvents rsCde As ADODB.Recordset
     
    Les 3 lignes précédentes déclarent des curseurs ADO
    pour 3 tables Clients,employés et commandes.
    Du dois avoir la référence Microsoft ADO Activée.
    Ou alors, tu utilises des curseurs DAO. 
    Pour cela tu actives les références Microsoft Data Access Component.
     
    Je sais pas si ca marche les WithEvents. Moi je les retirerais si ca marche pas.
     
    Avec DAo tu déclares et initialises comme suit:
    Dim db as DAO.Database
    Dim rsCli As DAO.Recordset
     
    Set db = CurrentDb
    Set rsCli = db.OpenRecordset ("Clients")
     
    Et pour parcourir les elements tu fais comme suit,ici j'affiche le premier champ : 
    Do until rsCli.EOF 
    MsgBox rsCi.Fields(0)
    rsCli.EOF
    'Passer à l'élement suivant
    rsCli.MoveNext 
    Loop
     
    'pour fermer ton curseur 
    rsCli.Close
    Set rsCli = Nothing 
     
    'avant tout créer un formulaire, place un treeview dessus, tu vas 
    sur la barre d'outil formulaire et autres composants . Dans la liste des activeX tu vas chercher le Treeview.  Version 5.0 ou 6.0.
    Il me semble que la 6 est plus sophistiquée, tu peux faire des drag & drop.
    Le treeview crée, tu peux double cliquer dessus. Tu as toutes ses propriétés personnalisées. 
    Commence par modifier son nom en "ocxTree".
    Regarde le type de noeud utilisés (PlusMinusText ou images)
     
    Alors la, c'est codé sur un evenement update, je te conseille de te faire 
    sur Form_Load de ton formulaire! 
     
    Private Sub cmdUpdate_Click()
            'déclaration des variables
            'ci dessous, tu déclares un noeud. du treeview
            'que tu utilises pour insérer un noeud père ou fils.
     
            Dim x As Node
     
            'Réaffectation des recordsets pour mise à jour
            If rsCli.State = adStateClosed Then rsCli.Open "Clients", _
               CurrentProject.Connection, adOpenStatic
            If rsEmp.State = adStateClosed Then rsEmp.Open "Employés", _
               CurrentProject.Connection, adOpenStatic
            rsCli.Requery: rsCli.MoveFirst
            rsEmp.Requery: rsEmp.MoveFirst
     
           'si les lignes du dessus ne marchent pas. Commence par tester avec 
    'un curseur DAO comme je t'ai expliqué au dessus. Pour cela tu déclares un objet database et un DAO.Recorsdet, que tu utilises pour manipuler tes données ensuite. regarde l'aide Acess sur DAO pour progresser.
     
     
    'Définition du treeview
     
            ocxTree.Nodes.Clear
      'pour vider toutes les noeuds du treview nommé ocxTree
            '--Clients
     
    'ci-dessous ajout des clients en tant que noeud pères
    'avec Nodes.Add(texte de la relation,type de relation,
    valeur de la clé,texte de l'élément,Index de l'image affichée sur l'élément
    Alors attention aux ImageList, pour cela, tu dois créer un objet ImageList.
    Et y placer tes images (image pour étendre un élément Plus ou Moins par exemple) 
    Sinon tu fais sans images, tu retires la valeur 1 dans le dernier paramètre.
     
            Set x = ocxTree.Nodes.Add(, , "c", "Clients", 1)
            x.ExpandedImage = 2
     
           'ajouts des clients fils de la clé "c" en parcourant le curseur rsCli
            Do Until rsCli.EOF
                Set x = ocxTree.Nodes.Add("c", tvwChild, "C-" & rsCli(0), rsCli(1) & _
                  " (" & rsCli(2) & ")", 1)
              'passage au suivant
                rsCli.MoveNext
            Loop
            '--Employés
           'idem pour les employés ...
            Set x = ocxTree.Nodes.Add(, , "e", "Employés", 1)
            x.ExpandedImage = 2
            Do Until rsEmp.EOF
                Set x = ocxTree.Nodes.Add("e", tvwChild, "E-" & rsEmp(0), rsEmp(1) & _
                  " " & rsEmp(2), 1)
                rsEmp.MoveNext
            Loop
    End Sub
    'et voila. J'espère que je t'ai aidé.
    Bonne chance.



    modération : cafeine, merci d'y penser

  16. #16
    Nouveau membre du Club
    Inscrit en
    Août 2004
    Messages
    51
    Détails du profil
    Informations forums :
    Inscription : Août 2004
    Messages : 51
    Points : 34
    Points
    34
    Par défaut
    Franchement, un grand MERCI à tous, et MERCI infiniment à batou22003 de s'être donné temps de mal pour détailler ce code
    Je vais maintenant m'atteler à mes tests et vous tiendrais au jus

    @+

  17. #17
    Nouveau membre du Club
    Inscrit en
    Août 2004
    Messages
    51
    Détails du profil
    Informations forums :
    Inscription : Août 2004
    Messages : 51
    Points : 34
    Points
    34
    Par défaut
    OK c'est tout bon, je suis arrivé à un premier résultat relativement satisfaisant
    Encore Merci à Toutes et à Tous

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

Discussions similaires

  1. Frame scindée (style explorateur windows)
    Par Eldered dans le forum wxWidgets
    Réponses: 2
    Dernier message: 09/05/2006, 14h43
  2. Réponses: 3
    Dernier message: 13/12/2005, 00h21
  3. pb icone aléatoire dans explorateur windows
    Par wello00 dans le forum Windows Serveur
    Réponses: 1
    Dernier message: 02/09/2005, 17h00
  4. recherche documentation : explorateur windows
    Par FarookFreeman dans le forum MFC
    Réponses: 9
    Dernier message: 03/02/2005, 15h49
  5. Réponses: 4
    Dernier message: 25/01/2005, 22h14

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