我想保存用Python-tkinter编写的正在运行的GUI窗口的快照。
例如,通过单击给定代码中的“保存”按钮来保存窗口的图像。
import tkinter as tk
def set_text(val):
entry.delete(0,tk.END)
entry.insert(0,val)
return entry
def save_img():
pass
root = tk.Tk()
entry = tk.Entry(root,width=10)
entry.pack()
b1 = tk.Button(root,text="animal",command=lambda:set_text("Bird"))
b1.pack()
b2 = tk.Button(root,text="plant",command=lambda:set_text("Seed"))
b2.pack()
b3 = tk.Button(root,text="Save",command=save_img)
b3.pack(pady=20)
root.mainloop()
谢谢!
在save_img
方法中,您可以首先找到顶部窗口的坐标,然后将其传递给grab
模块中的Pyscreenshot方法。如何找到坐标?您可以从here开始:
[winfo_x,winfo_y和winfo_width之类的方法可能会对您有所帮助。