下面是我的代碼和 csv 檔案看起來像
serail_number, Mac_Id
001, 19bc
002, 19bd
from tkinter import *
import tkinter.ttk as ttk
import csv
def OnDoubleClick(event):
item = tree.selection()
print('item:', item)
print('event:', event)
item = tree.selection()[0]
print("you clicked on", tree.item(item,"text"))
root = Tk()
root.title("Python - Import CSV File To Tkinter Table")
width = 500
height = 400
screen_width = root.winfo_screenwidth()
screen_height = root.winfo_screenheight()
x = (screen_width/2) - (width/2)
y = (screen_height/2) - (height/2)
root.geometry("%dx%d %d %d" % (width, height, x, y))
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=("Serial number", "Mac Id"), 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('Serial number', text="Serial number", anchor=W)
tree.heading('Mac Id', text="Mac Id", anchor=W)
tree.column('#0', stretch=NO, minwidth=0, width=0)
tree.column('#1', stretch=NO, minwidth=0, width=200)
tree.column('#2', stretch=NO, minwidth=0, width=200)
tree.bind("<<TreeviewSelect>>", OnDoubleClick)
tree.pack()
with open('data.csv') as f:
reader = csv.DictReader(f, delimiter=',')
for row in reader:
serial_number = row['serial_number']
Mac_Id = row['Mac_Id']
tree.insert("", 0, values=(serial_number, Mac_Id))
#Main
if __name__ == '__main__':
root.mainloop()**
因為它在您選擇時僅列印第 1 行和第 1 列,但我想同時列印第 1 行、第 1 列和第 2 列并將資料存盤到變數中
uj5u.com熱心網友回復:
改變這個:
print("you clicked on", tree.item(item,"text"))
對此:
values = tree.item(tree.selection())['values']
print("you clicked on", item, values)
或者對于一個串列中的一個串列中的所有內容,請使用:
values = [item] tree.item(tree.selection())['values']
print("you clicked on", values)
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/504282.html
下一篇:回傳月份索引/數字而不是月份名稱