Как я могу отобразить много строк столбца, используя Treeview в Python? - PullRequest
0 голосов
/ 17 апреля 2020

после дополнительных исследований в Google, я не решил свою проблему. Я использую этот код, упомянутый ниже, я хочу отобразить столбец, который содержит много строк, но если я извиняюсь за этот код, то в каждом столбце отображается только одна строка, а остальные строки скрыты. Я хочу знать, если это хорошая идея использовать Treeview для отображения всех данных в моем CSV-файле? если это возможно. Как мне сделать так, чтобы в моем windows отображалось больше одной строки в каждом столбце с помощью дерева?

Спасибо

from tkinter import *
import tkinter.ttk as ttk
import csv

root = Tk()
root.title("display windows")


root.geometry("800x700+500+600")

root.resizable(0, 0)

TableMargin = Frame(root, width=500)
TableMargin.pack(side=TOP)

scrollbarx = Scrollbar(TableMargin, orient=HORIZONTAL)
scrollbary = Scrollbar(TableMargin, orient=VERTICAL)
tree = ttk.Treeview(TableMargin, columns=("Name", "Description", "Criticity", "Ticket", "Statut", "Owner", "Deadline", "Text_of_manyrow"), height=400, selectmode="extended",
                    yscrollcommand=scrollbary.set, xscrollcommand=scrollbarx.set)
scrollbary.config(command=tree.yview)
scrollbary.pack(side=RIGHT, fill=Y)
scrollbarx.config(command=tree.xview)
scrollbarx.pack(side=BOTTOM, fill=X)
tree.heading('Name', text="Name", anchor=W)
tree.heading('Description', text="Description", anchor=W)
tree.heading('Criticity', text="Criticity", anchor=W)
tree.heading('Ticket', text="Ticket", anchor=W)
tree.heading('Statut', text="Statut", anchor=W)
tree.heading('Owner', text="Owner", anchor=W)
tree.heading('Deadline', text="Deadline", anchor=W)
tree.heading('Text_of_manyrow', text="Text_of_manyrow", anchor=W)


tree.column('#0', stretch=NO, minwidth=0, width=0)
tree.column('#1', stretch=NO, minwidth=0, width=120)
tree.column('#2', stretch=NO, minwidth=0, width=120)
tree.column('#3', stretch=NO, minwidth=0, width=120)
tree.column('#4', stretch=NO, minwidth=0, width=120)
tree.column('#5', stretch=NO, minwidth=0, width=120)
tree.column('#6', stretch=NO, minwidth=0, width=120)
tree.column('#7', stretch=NO, minwidth=0, width=120)
tree.column('#8', stretch=NO, minwidth=0, width=120)
tree.column('#8', stretch=NO, minwidth=0, width=120)
tree.pack()

with open('file.csv') as f:
#the file file.csv containt the data that I want to display on wy windows
  reader = csv.DictReader(f, delimiter=',')
  for row in reader:
    name_vul = row['Name']
    des = row['Description']
    cri = row['Criticity']
    ti = row['Ticket']
    sta = row['Statut']
    own = row['Owner']
    dead = row['Deadline']
    rm = row['Text_of_manyrow']
    tree.insert("", 0, values=(name_vul, des, cri, ti, sta, own, dead, rm))
root.mainloop()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...