0
我無法在treectrl中遞歸添加節點。即我想要在瀏覽器中顯示所有的目錄和文件。如何在tcl tk中顯示目錄結構(資源管理器)?
直到現在,這就是我所擁有的。我在當前每個文件夾中添加虛擬節點。
package require treectrl
treectrl .t -showheader 0 -selectmode single -showroot 0 -yscrollcommand {.y set}
scrollbar .y -ori vert -command ".t yview"
pack .y -side right -fill y
pack .t -side right -fill both -expand 1
set columnID [.t column create -text "Column 0"]
.t configure -treecolumn $columnID
.t element create el1 text
.t element create el2 rect -showfocus yes
.t style create s1
.t style elements s1 [list el1 el2]
.t style layout s1 el2 -union el1
.t configure -defaultstyle s1
proc add_node {parent text} {
set itemID [.t item create -button yes ]
.t item element configure $itemID 0 el1 -text $text
.t item collapse $itemID
.t item lastchild $parent $itemID
return $itemID
}
set images [glob -nocomplain -directory "D:/Explore" "*"]
for {set i 0} {$i<=[llength $images]} {incr i} {
set root [lsearch $images [lindex $images $i]]
add_node [add_node [add_node root [list directory [file tail [lindex $images $i]]]] dummy] dummy2
}
你可能想仔細閱讀本曾在https://wiki.tcl.tk/15091靈感 –