我有一个 python tkinter 应用程序脚本,可以在按下按钮时截取屏幕截图。但不幸的是,在截屏时,应用程序的窗口也被捕获。
这是应用程序的代码:
from PIL import ImageGrab
import tkinter as tk
from tkinter import filedialog
import time
def takeShot():
sc = ImageGrab.grab()
path = filedialog.asksaveasfilename(defaultextension='.png')
sc.save(path)
root = tk.Tk()
canvas1 = tk.Canvas(root,width=300,height=300)
canvas1.pack()
but = tk.Button(text='Take Screenshot',command=takeShot,bg='green',fg='white',font=10)
canvas1.create_window(150,150,window=but)
root.mainloop()
虽然它会截取屏幕截图,但应用程序窗口也会被捕获
我不希望屏幕截图中出现那个白色窗口。我试图最小化窗口,然后通过更新这样的函数来最大化:
def takeShot():
root.withdraw()
sc = ImageGrab.grab()
root.deiconify()
path = filedialog.asksaveasfilename(defaultextension='.png')
sc.save(path)
但它没有用。
有没有办法最小化应用程序然后截取屏幕截图然后最大化它以保存对话框以便捕获全屏?
慕婉清6462132
UYOU
相关分类