问题
- I can't figure out how to control the width of the widget
I can't make it display only 2 columns
from Tkinter import * from ttk import Treeview root = Tk() tree = Treeview(root, height = 10, columns = 2) tree['columns'] = ('one','two') tree.column('one', width = 50) tree.column('two', width = 50) tree.heading('one', text = 'UserName', anchor = 'center') tree.heading('two', text = 'ID', anchor = 'centeenter code herer') tree.grid(row = 3, column = 0) root.mainloop()
回答1:
That first column is the tree. You can turn it off by using the show
attribute. The value must be a list with zero or more values. The valid values are headings
to show the column headings, and tree
to show the tree. The default value is ['tree', 'headings']
.
Here's how to have the treeview show the column headings but not the tree:
tree = Treeview(root, height=10, columns=2, show=["headings"])
If you want to see the tree, but you want to control its width, you can do that too. The tree column can always be identified with '#0'
. You can use the column
method to set the width:
tree.column('#0', width=50)
来源:https://stackoverflow.com/questions/49797601/why-do-treeview-widget-put-an-extra-column-although-i-only-gave-it-two-i-also-c