v_u = ['dd','dds','qqq']
v_n = ['111','222','333']
win = tk.Tk()
win.geometry('500x400')
def onCopy():
# 右键菜单
item_text = tv.item(tv.selection(), 'values')
print(item_text[2]) # 输出所选行的第一列的值
win32clipboard.OpenClipboard()
win32clipboard.EmptyClipboard()
win32clipboard.SetClipboardData(win32clipboard.CF_TEXT, item_text[2])
print(win32clipboard.GetClipboardData(win32clipboard.CF_TEXT))
win32clipboard.CloseClipboard()
tv = ttk.Treeview(win,show='headings')
tv["columns"] = ('a','b','c')
tv.grid(row=4,columnspan=4,sticky='ES')
tv.column('a', width=50, anchor='center')
tv.column('b',width=200)
tv.column('c',width=200)
tv.heading('a',text='编号')
tv.heading('b',text='说明')
tv.heading('c',text='地址')
# 右键菜单
menu = tk.Menu(win, tearoff=0)
menu.add_command(label="复制地址", command=onCopy)
def popupmenu(event):
menu.post(event.x_root, event.y_root)
tv.bind("<Button-3>", popupmenu)
def add_list():
for i in range(len(v_u)):
tv.insert('', 'end', values=(i + 1, v_n[i], v_u[i]))
tk.Button(win, text='add', width='10', height='1', command=add_list).grid(row=5, column=1)
win.mainloop()
tv是treeview
item_text[2]这个值打出来是对的。
但SetClipboardData后,我在粘贴,就只有第一个字母。
这是为什么?