Solved

Treeview to RichTextBox import

Posted on 2015-01-11
5
82 Views
Last Modified: 2015-01-12
Hello,
I have a small project. In one point I couldnt succed to solve again.
In my project , I have one treeview ( called tv ), and one command button. In my project in Form_Load event , I have some INFITF application codes which provides some information to establish treeview.
ın the attachment , I can export treeview nodes in order to Richtext box, no problem. But when I am importing to richtextbox, I need some additional events.
What I want:
- when I am sending the treeview nodes to Richtext box, I want to add some suffix to treeview nodes.
If my node has sub nodes -  when I am sending , I want to add (.Zeta) suffix at the end, and if there is sub nodes ı want to add (.Beta) suffix at the ends.
For example lets say that my treeview like that

      -AA
        .
        .
        -BB
          .BB1
          .BB2
        .
        .
        -CC
          .CC1
          .CC2
        .
        .DD
        .
        .EE

And my Richtextbox:
AA
BB
BB1
BB2
CC
CC1
CC2
DD
EE

The thing that I want:

AA.Zeta
BB.Zeta
BB1.Beta
BB2.Beta
CC.Zeta
CC1.Beta
CC2.Beta
DD.Beta
EE.Beta

ı am attaching to my project, but I deleted my form_load event because of my INFITF application which will not work on your computer. So you can write some thing there to establih your treeview.
Can you help me for this point?
Project.zip
0
Comment
Question by:hakanogu
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 3
  • 2
5 Comments
 
LVL 48

Expert Comment

by:Martin Liss
ID: 40543526
Let me see what I can do for you here.
0
 
LVL 48

Expert Comment

by:Martin Liss
ID: 40543529
Try this:
Public Sub WalkTree(objNode As Node)
    'Bu kod treeviewlardaki node isimlerinin text1 kontrolunun içine atilmasini sagliyor
    Dim objSiblingNode As Node
    
    Set objSiblingNode = objNode
    
    Do
'        RichTextBox1.Text = RichTextBox1.Text & objSiblingNode.Text & vbCrLf
        If objNode.Parent Is Nothing Then
            RichTextBox1.Text = RichTextBox1.Text & objSiblingNode.Text & ".Zeta" & vbCrLf
        Else
            RichTextBox1.Text = RichTextBox1.Text & objSiblingNode.Text & ".Beta" & vbCrLf
        End If


        If Not objSiblingNode.Child Is Nothing Then
            Call WalkTree(objSiblingNode.Child)
        End If
        Set objSiblingNode = objSiblingNode.Next
    Loop While Not objSiblingNode Is Nothing
End Sub

Open in new window

0
 

Author Comment

by:hakanogu
ID: 40543824
Hello Martin,
I tried the code but it just gives the root as (.Zeta), all the other is becoming (.Beta)
0
 

Author Comment

by:hakanogu
ID: 40543855
Ok Martin i solved the problem with your help
If I correct your code instead of "objNode.Parent " with  "objSiblingNode.Child" in your firs is working.

        If Not objSiblingNode.Child Is Nothing Then
            RichTextBox1.Text = RichTextBox1.Text & objSiblingNode.Text & ".Zeta" & vbCrLf
        Else
            RichTextBox1.Text = RichTextBox1.Text & objSiblingNode.Text & ".Beta" & vbCrLf
        End If

If you send the new code by changing , i will accept your answer Martin.
Thank you very much for your help.
0
 
LVL 48

Accepted Solution

by:
Martin Liss earned 500 total points
ID: 40544125
Public Sub WalkTree(objNode As Node)
    'Bu kod treeviewlardaki node isimlerinin text1 kontrolunun içine atilmasini sagliyor
    Dim objSiblingNode As Node
    
    Set objSiblingNode = objNode
    
    Do
'        RichTextBox1.Text = RichTextBox1.Text & objSiblingNode.Text & vbCrLf
        If Not objSiblingNode.Child Is Nothing Then
            RichTextBox1.Text = RichTextBox1.Text & objSiblingNode.Text & ".Zeta" & vbCrLf
        Else
            RichTextBox1.Text = RichTextBox1.Text & objSiblingNode.Text & ".Beta" & vbCrLf
        End If


        If Not objSiblingNode.Child Is Nothing Then
            Call WalkTree(objSiblingNode.Child)
        End If
        Set objSiblingNode = objSiblingNode.Next
    Loop While Not objSiblingNode Is Nothing
End Sub

Open in new window

0

Featured Post

On Demand Webinar - Networking for the Cloud Era

This webinar discusses:
-Common barriers companies experience when moving to the cloud
-How SD-WAN changes the way we look at networks
-Best practices customers should employ moving forward with cloud migration
-What happens behind the scenes of SteelConnect’s one-click button

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

When trying to find the cause of a problem in VBA or VB6 it's often valuable to know what procedures were executed prior to the error. You can use the Call Stack for that but it is often inadequate because it may show procedures you aren't intereste…
Article by: Martin
Here are a few simple, working, games that you can use as-is or as the basis for your own games. Tic-Tac-Toe This is one of the simplest of all games.   The game allows for a choice of who goes first and keeps track of the number of wins for…
As developers, we are not limited to the functions provided by the VBA language. In addition, we can call the functions that are part of the Windows operating system. These functions are part of the Windows API (Application Programming Interface). U…
Get people started with the process of using Access VBA to control Outlook using automation, Microsoft Access can control other applications. An example is the ability to programmatically talk to Microsoft Outlook. Using automation, an Access applic…

717 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question