ツリービューで選択されたノードの色を変えるには?

解決


皐月  2004-12-14 16:35:48  No: 118312  IP: [192.*.*.*]

初めまして。お世話になります。

過去ログを参照しツリービューのノードの色を変えることはできました。
それを参考に現在選択されているノードの色のみを変えるようにしようと思い、
試行錯誤してるのですがどうも上手くいきません。
デフォルトの色が黒とし、あるノードを選択するとそのノードの色は赤に変更。
更に別のノードを選択した場合、新たに選択したものを赤先程まで赤だったものを黒…という感じにしたいのですが、どのような手段があるのでしょうか?

すみませんが、考え方でも結構ですので御指導頂けないでしょうか。
環境はwinXPのVB6.0です。

編集 削除
聖 羅樹  URL  2004-12-14 16:48:07  No: 118313  IP: [192.*.*.*]

前に選択されたノードを覚えておくのはいかがでしょう?
このような感じで。

Private Sub TreeView1_NodeClick(ByVal Node As MSComctlLib.Node)
    Static PrevSelNode As MSComctlLib.Node
    
    If Not PrevSelNode Is Nothing Then
        PrevSelNode.ForeColor = vbBlack
    End If
    
    Node.ForeColor = vbRed
    Set PrevSelNode = Node
End Sub

編集 削除
皐月  2004-12-14 17:32:38  No: 118314  IP: [192.*.*.*]

すばやい解答ありがとうございます。

前回選択されたノードをこういう風に覚えさせておくというのは、
全く思いつきませんでした。
この方法は色々と応用が利きそうですね。

的確なアドバイス、ありがとうございました。

編集 削除