タイトル : Re^3: TreeViewのノードの保存 投稿日 : 2010/09/02(Thu) 14:20 投稿者 : 魔界の仮面弁士
ごめんなさい。訂正前のコードを貼ってしまいました。 > 不必要に繰り返しが有りました。 その通り、ループ処理が不必要です。 修正版に差し替えておきましたので、 No.14889 を再確認してみてください。 > とりあえず、希望の形式で出力できましたがおかしな所も有るかも知れません。 その実装だと、たとえば下記の場合、最後の Text1-2-1 が列挙されませんよ。 Private Sub Form_Load() TreeView1.Nodes.Add(, , "Key1", "Text1").Expanded = True TreeView1.Nodes.Add("Key1", tvwChild, "Key1-1", "Text1-1").Expanded = True TreeView1.Nodes.Add("Key1", tvwChild, "Key1-2", "Text1-2").Expanded = True TreeView1.Nodes.Add("Key1-1", tvwChild, "Key1-1-1", "Text1-1-1").Expanded = True TreeView1.Nodes.Add("Key1-1", tvwChild, "Key1-1-2", "Text1-1-2").Expanded = True TreeView1.Nodes.Add("Key1-2", tvwChild, "Key1-2-1", "Text1-2-1").Expanded = True End Sub > Private Sub Command2_Click() > Dim objNode As Node, strText As String, lNodeDepth As Long > Set objNode = TreeView1.Nodes.Item(1).FirstSibling.Child この方法は、.Item(1) の階層位置が固定的な場合にしか利用できません。 たとえば、 【ア】.Nodes(n).Root.FirstSibling.Child 【イ】.Nodes(n).Root.Child 【ウ】.Nodes(1).FirstSibling.Child とあった場合、アとイは常に「最上位先頭ノードの第一子」を示しますが、 ウの結果は 第2階層になることもあれば第4階層になることもありえます。 |