Изменение высоты строки для разных древовидных представлений tkitner - PullRequest
0 голосов
/ 04 июля 2018

У меня есть 2 вида дерева, и я хочу установить высоту строки для первого равным 45. Я использую style, но когда я изменяю высоту строки для первого вида дерева, он автоматически меняет высоту строки для второго вида дерева.

Что я делаю не так?

from tkinter import *
from tkinter import ttk

myApp = Tk()

#first tree with row height of 45

s = ttk.Style()
s.configure('Treeview', rowheight=45)

NewTree= ttk.Treeview(myApp, height=4, style='Treeview')
NewTree['show'] = 'headings'

NewTree["columns"]=("1","2")

NewTree.column("1", width=50)
NewTree.column("2", width=50)

NewTree.heading("1", text="Col A")
NewTree.heading("2", text="Col B")

item = NewTree.insert("", "end", values=("value 1","value 2"))

NewTree.grid(row=0,column=0,padx=5)

#second tree with defult row height (it automatically changed to 45)
#How to set different row heights to diferent treeviews?

SecondTree= ttk.Treeview(myApp, height=4)
SecondTree['show'] = 'headings'

SecondTree["columns"]=("1","2")

SecondTree.column("1", width=50)
SecondTree.column("2", width=50)

SecondTree.heading("1", text="Col A")
SecondTree.heading("2", text="Col B")

item = SecondTree.insert("", "end", values=("value 1","value 2"))

SecondTree.grid(row=0,column=1,padx=5)

myApp.mainloop()

1 Ответ

0 голосов
/ 04 июля 2018

Стиль Treeview - это стиль по умолчанию, используемый для всех виджетов Treeview. Если вы измените это, вы измените все древовидные представления. Если вы хотите изменить только один вид дерева, создайте новый стиль на основе стиля Treeview по умолчанию и измените его ( ссылка ):

s.configure('MyStyle.Treeview', rowheight=45)

NewTree= ttk.Treeview(myApp, height=4, style='MyStyle.Treeview') 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...