Sujet : Re: how to style one particular treeview
De : user1108 (at) *nospam* newsgrouper.org.invalid (Olivier)
Groupes : comp.lang.tclDate : 17. Jul 2025, 16:36:47
Autres entêtes
Message-ID : <1752766607-1108@newsgrouper.org>
References : 1
User-Agent : Newsgrouper/0.7.3
Mark Summerfield <
m.n.summerfield@gmail.com> posted:
The trick is to use the headings, not the tree itself :
set _names { ABC DEF GHI }
ttk::treeview .mytree -columns ignored -show headings -yscrollcommand { .scrY set }
.mytree heading ignored -text "Names"
foreach _item $_names {
.mytree insert {} end -values $_item
}
ttk::scrollbar .scrY -command { .mytree yview }
pack .mytree -side left ; pack .scrY -side right -fill y
Olivier.
I am using one particular ttk::treeview as a listbox:
ttk::frame .ignoresForm.ignoresListFrame
set ignoresList [ttk::treeview \
.ignoresForm.ignoresListFrame.ignoresList -striped true \
-yscrollcommand {.ignoresForm.ignoresListFrame.scrolly set}]
ttk::style configure List.Treeview -indent 0
#ttk::style map List.Treeview -indent [list disabled 0 active 0]
$ignoresList configure -show tree -selectmode browse \
-style List.Treeview
$ignoresList column #0 -anchor w -stretch true
ttk::scrollbar .ignoresForm.ignoresListFrame.scrolly -orient vertical \
-command {.ignoresForm.ignoresListFrame.ignoresList yview}
By default a ttk::treeview has an -indent of 20 pixels which makes sense
for trees but is not needed for lists.
In the code above I've tried to create a custom style to apply to one
treeview but it has no effect whether I use ttk::style configure or
ttk::style map.
What is the correct way to do this?