我的程序的两个目标: #1 单击按钮后将笔记复制到剪贴板;和 #2 通过重新启动程序使按钮小部件保持不变。(这篇文章将只关注第 1 个目标)按钮按预期填充,但命令无法正常工作(尽管没有错误)。我尝试过其他剪贴板模块,例如 pyperclip,但没有成功。抱歉,如果这很难理解,我上周才开始学习 Python 作为我的第一门编程语言。
我想知道如何让按钮将其相应的注释复制到剪贴板。
from tkinter import *
import json
root = Tk()
root.title("CopyNotes")
root.geometry()
json_file = open("dictionary.json", encoding="utf-8")
mynotes = json.load(json_file)
for keys in mynotes:
btnz = Button(root, text=mynotes[keys][0], font="Helvetica 10 bold", bg="silver", command=root.clipboard_append(mynotes[keys][1]), height=2, width=13).pack(side=TOP, fill=BOTH, expand=YES)
root.mainloop()
所以要明确一点,我要解决的问题是按钮命令无法正常工作。第一次按下任何按钮时,它会复制“button1notebutton2notebutton3note”并在此之后完全停止工作。我希望第一个按钮实现的效果:root.clipboard_append(button1note) 等等。
在弄清楚如何执行此操作后,我计划接受用户输入以通过添加到字典来添加自己的按钮。编辑:修复了剪贴板问题 -
mynotes = pickle.load(open("note.p", "rb"))
print(mynotes)
for keys in mynotes:
thenotes = mynotes[keys][1]
mybtnz = Button(ctowin, text=mynotes[keys][0], font="Helvetica 10 bold", bg="silver",
command=lambda thenotes=thenotes: pyperclip.copy(thenotes), height=2, width=13)\
.pack(side=TOP, fill=BOTH, expand=YES)
温温酱
相关分类