Office Forum
www.Office-Loesung.de
Access :: Excel :: Outlook :: PowerPoint :: Word :: Office :: Wieder Online ---> provisorisches Office Forum <-
TreeView - jetzt geht gar nichts mehr
zurück: Focus verschieben Fehler 2110 weiter: Formular & Unterformular Unbeantwortete Beiträge anzeigen
Neues Thema eröffnen   Neue Antwort erstellen     Status: Feedback Facebook-Likes Diese Seite Freunden empfehlen
Zu Browser-Favoriten hinzufügen
Autor Nachricht
pezi4u
Im Profil kannst Du frei den Rang ändern


Verfasst am:
17. Jul 2009, 11:49
Rufname:

TreeView - jetzt geht gar nichts mehr - TreeView - jetzt geht gar nichts mehr

Nach oben
       Version: Office 2007

Hallo,

ich habe eine Anwendung, bei der ich ein TreeView verwende, welches rekursiv aufgerufen wird. Da das Füllen des TreeView im Netzwerk elends lange dauert habe ich versucht, eine andere Möglichkeit zum Füllen des TreeView zu suchen.

Leider hat dann überhaupt nichts mehr geklappt und ich habe alles gelöscht, damit nur noch das Grundgerüst übrig bleibt. Jetzt wird nicht einmal mehr das TreeView fehlerfrei angezeigt und hoffe auf die Hilfe des Forums.

Ich habe eine Kopie (nur eine Tabelle, eine Abfrage und ein Formular) beigefügt.
Der Code zu Form_Load ist noch falsch, aber ich jetzt fehlt mir vollkommen der Plan:

Code:
Private Sub Form_Load()
   
    Dim db As DAO.Database
    Dim rst As DAO.Recordset
    Dim objNode As MSComctlLib.Node
    Dim lngVorherige_ma_id As Long
    Set db = CurrentDb
    Set rst = db.OpenRecordset("qryTreeViewMA")
    objTreeView.Nodes.Clear
    Do While Not rst.EOF
        If Not rst!ma_id = lngVorherige_ma_id Then
            Set objNode = objTreeView.Nodes.Add(, , "ma_id " & rst!ma_id, rst!Mitarbeiter)
        End If
        Set objNode = objTreeView.Nodes.Add("ma_id " & lngVorherige_ma_id, tvwChild, _
            "ma_id " & rst!ma_id, rst!Mitarbeiter)
        lngVorherige_ma_id = rst!ma_id
        rst.MoveNext
    Loop
    Set objNode = Nothing
    rst.Close
    Set rst = Nothing
    Set db = Nothing
   
End Sub


Das TreeView soll beispielsweise folgendes anzeigen:

Zitat:
Dipl.Ing. Herbert Kaufmann
|_ Gabriele Rastinger
|_ Robert Kurz
|_ Hubertus Bittendorfer
|_ Peter Heidecker
...


Leider kenn ich mich noch immer nicht gut mit TreeViews aus!

Schöne Grüße
pezi4u



WP.zip
 Beschreibung:

Download
 Dateiname:  WP.zip
 Dateigröße:  35.77 KB
 Heruntergeladen:  18 mal

Gast



Verfasst am:
17. Jul 2009, 13:29
Rufname:


AW: TreeView - jetzt geht gar nichts mehr - AW: TreeView - jetzt geht gar nichts mehr

Nach oben
       Version: Office 2007

Hallo,

kannst du das Beispiel bitte konvertieren, damit man man es auch mit älteren Office-Versionen öffnen kann?
pezi4u
Im Profil kannst Du frei den Rang ändern


Verfasst am:
17. Jul 2009, 13:52
Rufname:

AW: TreeView - jetzt geht gar nichts mehr - AW: TreeView - jetzt geht gar nichts mehr

Nach oben
       Version: Office 2007

Hab's nochmals hochgeladen, da es Probleme mit den Verweisen gab!


WP.zip
 Beschreibung:

Download
 Dateiname:  WP.zip
 Dateigröße:  104.15 KB
 Heruntergeladen:  20 mal

MissPh!
Office-VBA-Programmiererin


Verfasst am:
17. Jul 2009, 15:53
Rufname:
Wohnort: NRW

AW: TreeView - jetzt geht gar nichts mehr - AW: TreeView - jetzt geht gar nichts mehr

Nach oben
       Version: Office 2007

Hallo, ich habe hier mal folgenden Vorschlag für dich:
Code:
Option Compare Database
Option Explicit

Private mTreeView As MSComctlLib.TreeView     '// Deklaration für Property Get
Dim db As DAO.Database, rst As DAO.Recordset
Dim objNode As MSComctlLib.Node

'// Prüft, ob Verweis auf TreeView Steuerelement vorhanden ist
Property Get objTreeView() As MSComctlLib.TreeView
    If mTreeView Is Nothing Then
        Set mTreeView = Me.tvwTreeTS.Object
    End If
    Set objTreeView = mTreeView
End Property

Private Sub Form_Load()
    Dim db As DAO.Database, rst As DAO.Recordset
    Dim objNode As MSComctlLib.Node
    Dim lngVorherige_ma_id As Long
   
    Set db = CurrentDb
    objTreeView.Nodes.Clear
    fillTreeView "SELECT * FROM qryTreeViewMA " & _
                  "WHERE parent_ma_id Is Null"
    Set objNode = Nothing
    Set db = Nothing
End Sub

Function fillTreeView(sql)
    Set rst = db.OpenRecordset(sql)
    Do While Not rst.EOF
        If IsNull(rst!parent_ma_id) Then
            Set objNode = objTreeView.Nodes.Add(, , "ma_id " & rst!ma_id, _
                                                rst!Mitarbeiter)
          Else
            Set objNode = objTreeView.Nodes.Add("ma_id " & rst!parent_ma_id, _
                                                tvwChild, _
                                                "ma_id " & rst!ma_id, _
                                                rst!Mitarbeiter)
        End If
        fillTreeView "SELECT * FROM qryTreeViewMA " & _
                      "WHERE parent_ma_id =" & rst!ma_id
        rst.MoveNext
    Loop
    rst.Close
    Set rst = Nothing
End Function
Der erste Aufruf erfolgt aus dem Load-Ereignis. Danach wird die Funktion rekursiv aufgerufen, wobei stets nach den möglichen "Kindern" eines Mitarbeiters gesucht wird. Auf diese Weise wird der Baum nach und nach vervollständigt, da jeder MA (in deinem Fall) mit Ausnahme des Starters (das könnten durchaus auch mehrere sein) einem anderen untergeordnet ist.

Viel Spaß damit!

_________________
Gruß MissPh!
pezi4u
Im Profil kannst Du frei den Rang ändern


Verfasst am:
17. Jul 2009, 16:23
Rufname:


AW: TreeView - jetzt geht gar nichts mehr - AW: TreeView - jetzt geht gar nichts mehr

Nach oben
       Version: Office 2007

Vielen Dank MissPh!

Schöne Grüße
pezi4u
Neues Thema eröffnen   Neue Antwort erstellen Alle Zeiten sind
GMT + 1 Stunde

Diese Seite Freunden empfehlen

Seite 1 von 1
Gehe zu:  
Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum nicht posten
Du kannst Dateien in diesem Forum herunterladen

Verwandte Themen
Forum / Themen   Antworten   Autor   Aufrufe   Letzter Beitrag 
Keine neuen Beiträge Access Formulare: bedingte Formatierung im Formular funktioniert gar nicht 5 AlexF036 92 26. Feb 2014, 14:15
AlexF036 bedingte Formatierung im Formular funktioniert gar nicht
Keine neuen Beiträge Access Formulare: Treeview Routine 6 Supermarc1 317 21. Aug 2013, 18:21
Supermarc1 Treeview Routine
Keine neuen Beiträge Access Formulare: Schriftart der Treeview ändern 14 JtGD28 2014 24. Jul 2012, 15:27
Bitsqueezer Schriftart der Treeview ändern
Keine neuen Beiträge Access Formulare: Treeview: Knoten nicht anwählbar einstellen 1 Vandroy 495 18. Sep 2011, 14:45
Nouba Treeview: Knoten nicht anwählbar einstellen
Keine neuen Beiträge Access Tabellen & Abfragen: Mit Aktualisierungsabfrage macht einfach gar nichts 4 spinpoint 180 29. Jul 2010, 14:51
KlausMz Mit Aktualisierungsabfrage macht einfach gar nichts
Keine neuen Beiträge Access Formulare: Fehlermeldungen wenn Treeview im Formular 2 JtGD28 278 23. März 2010, 19:52
JtGD28 Fehlermeldungen wenn Treeview im Formular
Keine neuen Beiträge Access Programmierung / VBA: Treeview On Click Aktion 3 levvoo 2618 24. Jul 2009, 12:53
MAPWARE Treeview On Click Aktion
Keine neuen Beiträge Access Programmierung / VBA: Treeview aus Daten in Tabelle erstellen 10 levvoo 2011 23. Jul 2009, 11:42
MissPh! Treeview aus Daten in Tabelle erstellen
Keine neuen Beiträge Access Programmierung / VBA: TreeView in geladenem Zusatnd speichern 2 Thommy1589 685 12. Mai 2009, 11:53
Thommy1589 TreeView in geladenem Zusatnd speichern
Keine neuen Beiträge Access Programmierung / VBA: Treeview mit Daten aus Tabelle füllen 1 aengstli 2206 31. Okt 2008, 11:04
heiko.richter Treeview mit Daten aus Tabelle füllen
Keine neuen Beiträge Access Programmierung / VBA: Im TreeView Root des ausgewählten Eintrags ermitteln 2 j.vorwald 2522 05. Jun 2008, 08:34
j.vorwald Im TreeView Root des ausgewählten Eintrags ermitteln
Keine neuen Beiträge Access Programmierung / VBA: grosses Problem mit Treeview 0 beemer 503 12. März 2008, 16:00
beemer grosses Problem mit Treeview
 

----> Diese Seite Freunden empfehlen <------ Impressum - Besuchen Sie auch: Microsoft Project