我有一个使用Python 2.7和tktable v1.1创建的表,如下所示:
class GUI (Tkinter.Tk):
self.testTable = tktable.Table(self, rows = 30, cols = 30, state='disabled',titlecols=1,titlerows=1, \
selectmode='extended', variable=self.tktableArray, selecttype='row', colstretchmode='unset', \
maxwidth=500, maxheight=190, xscrollcommand = self.HScroll.set, yscrollcommand = self.VScroll.set) # Create the results table
self.testTable.grid(column= 2, row = 6, columnspan = 4) # Add results table to the grid
不相关的代码被遗漏了,以免抛出一堆代码。我的愿望是为每列独立调整列宽。例如,在第0列中,我只有3位数字,在第1列中,我有10个字符的单词。我知道我可以使用
self.testTable.configure(colwidth=10)
设置列的宽度,但这适用于所有列。有没有办法按列进行此操作?更好的是,有没有办法使列宽适合列的内容?任何帮助表示赞赏。
答案 0 :(得分:4)
我从未使用tktable
,但快速阅读tktable
文档显示表对象上有width()
方法。你试过了吗?
# set width of column 0 to 3, column 1 to 10
self.testTable.width(0,3,1,10)
答案 1 :(得分:0)
正确的答案是:
columnwidth={'0':7,'1':12,'2':20,'3':35,'4':15,'5':15,'6':22}
self.table.width(**columnwidth)