如何在tcl中使表格列表可滚动?

如何在tcl中使表格列表可滚动?,tcl,tk,Tcl,Tk,我使用tablelist包在一个框架中显示一个表列表(heh),但是框架非常小,表中有一堆列 我需要一些方法使这个表格列表可以水平和垂直滚动 这是我的表格代码 labelframe .t.lbf -text "Search Results for: $term" -padx 0 -width 47 tablelist::tablelist .t.mlb -selectmode multiple -columns {0 "File" 0 "Name" 0 "Version" 0 "Archtec

我使用tablelist包在一个框架中显示一个表列表(heh),但是框架非常小,表中有一堆列

我需要一些方法使这个表格列表可以水平和垂直滚动

这是我的表格代码

labelframe .t.lbf -text "Search Results for: $term" -padx 0 -width 47

tablelist::tablelist .t.mlb -selectmode multiple -columns {0 "File" 0 "Name" 0 "Version" 0 "Archtectures" 0 "Summary" 0 "Type"} -stretch all -background white -width 47                

pack .t.mlb  -in .t.lbf -anchor w

place .t.lbf -x 10 -y 125

我已经发布了向小部件(在本例中是文本小部件)添加滚动条的基本方法。以下似乎有效:

toplevel .t
labelframe .t.lbf -text "Search Results for: $term" -padx 0 -width 47
tablelist::tablelist .t.lbf.mlb -selectmode multiple -columns {0 "File" 0 "Name" 0 "Version" 0 "Archtectures" 0 "Summary" 0 "Type"} -stretch all -background white -width 47 -xscroll {.t.lbf.h set} -yscroll {.t.lbf.v set}

scrollbar .t.lbf.v -orient vertical   -command {.t.lbf.mlb yview}
scrollbar .t.lbf.h -orient horizontal -command {.t.lbf.mlb xview}

# Lay them out
grid .t.lbf -sticky nsew

grid .t.lbf.mlb .t.lbf.v -sticky nsew
grid .t.lbf.h            -sticky nsew

# Tell the tablelist widget to take all the extra room
grid rowconfigure    .t.lbf .t.lbf.mlb -weight 1
grid columnconfigure .t.lbf .t.lbf.mlb -weight 1

place .t.lbf -x 10 -y 125
其他读者注意:OP希望将
表格列表
包装在
labelframe
中,然后将其放置在
位置。如果没有这些要求,任务就会变得更容易。同样,请参见上面链接中的示例:将其用于表列表只涉及替换文本小部件


文档:,

@LucasOliveira:通过取出
t.frm
框架,简化了一点,一旦我放弃将其打包到labelframe中,就不再需要它了。新代码似乎同样有效。我使用创建表格列表的人的网站来获取我需要的几乎所有文档。例如,您可以了解如何添加滚动条,以及更多选项!