Как расположить все элементы ttk Treeview слева? - PullRequest
1 голос
/ 24 мая 2019

Я хотел бы иметь древовидную структуру со всеми элементами, привязанными слева, без заголовка и с маленькой кнопкой плюс, которая расширяет подзначения. По какой-то причине у меня не получается работать сразу с тремя вещами.

Вот мой код:

import tkinter as tk
from tkinter import ttk

list1 = ["N_1", "N_13", "N_17"]
list2 = ["N_8", "N_3", "N_5", "N_19"]

root = tk.Tk()
frame = tk.Frame(root)
frame.place(x=0, y=0, relwidth=1, relheight=1)
tree = ttk.Treeview(frame)
tree["show"] = "tree"
tree.place(x=0, y=0, relwidth=1, relheight=1)
tree['columns'] = ["Col1"]
tree.column("Col1", anchor='w') #n, ne, e, se, s, sw, w, nw, or center
tree.insert("", "end" , values= "Num1")
for i in list1:
    tree.insert("", "end" , values= i)
id = tree.insert("", "end")
for i in list2:
    tree.insert(id, "end", values=i)

root.mainloop()

Показанный код дает вам это

Если вы измените атрибут показа на "заголовки"

Тогда результат будет

1 Ответ

0 голосов
/ 24 мая 2019

Вы можете передать anchor в качестве параметра при создании столбцов дерева.

import tkinter as tk
from tkinter import ttk

root = tk.Tk()
tree = ttk.Treeview(root)
header = ('size',)
tree['columns'] = header
tree.column('size', width=100, anchor='w') #n, ne, e, se, s, sw, w, nw, or center
tree.heading('size', text='Size')
tree.insert("",0,values=("Left",))
tree.pack()

root.mainloop()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...