1 回答
TA贡献1752条经验 获得超4个赞
您不需要使用 json,因为您使用的不是 JSON 对象而是 Python 字典。
这是您重构的代码以使用 3 个按钮填充应用程序;
[更新] 尽管您需要完全重构代码,因为您的for循环会立即用字典中的所有内容填充剪贴板。
from tkinter import *
from tinydb import TinyDB, Query
db = TinyDB('clipboard.json')
root = Tk()
root.title("CopyNotes")
root.geometry()
mynotes = {
"B1": ["button1label","button1note"],
"B2":["button2label","button2note"],
"B3":["button3label","button3note"]
}
def cp_to_cb_and_db(note, key):
root.clipboard_append(note[key][1])
print('[+] Adding note: {} to clipboard.'.format(note))
db.insert({key: note})
for key in mynotes:
btnz = Button(
root,
text=mynotes[key][0],
font="Helvetica 10 bold",
bg="silver",
command=cp_to_cb_and_db(mynotes, key),
height=2,
width=13).pack(side=TOP, fill=BOTH, expand=YES)
root.mainloop()
添加回答
举报