【发布时间】:2018-07-13 10:36:23
【问题描述】:
我有一个应用程序,我必须在单击按钮时弹出一个Spinbox 小部件。小部件需要覆盖在作为图像的背景上。我已尝试使用下面的代码,但单击按钮时未出现小部件。我相信图像显示优先于小部件显示。
import tkinter as tk
import cv2
from PIL import Image,ImageTk
top = tk.Tk()
count = 1
image = cv2.imread("frames/0.jpg")
w = tk.Spinbox(top, from_=0, to=10)
def helloCallBack():
global count,w
if count%2 != 0:
w.pack()
else:
w.forget()
print(count)
count+=1
B = tk.Button(top, text ="Hello", command = helloCallBack)
B.pack()
label = tk.Label(top)
label.pack()
img = Image.fromarray(image)
imgtk = ImageTk.PhotoImage(image=img)
label.imgtk = imgtk
label.configure(image=imgtk)
top.update()
top.mainloop()
【问题讨论】:
-
但是如果图片更新了,比如播放视频,情况就不好了
-
您的意思是:您希望图像显示为旋转框的背景?
-
不,我想要的是,当我按下按钮时,旋转框应该覆盖在背景之上(无论是图像还是视频),并且应该保持覆盖状态,直到我按下按钮再次。我有一个在 tkinter 帧中播放的视频,有时它需要我引入一些瞬时延迟,为此我使用 spinbox 提供延迟。目前,当我按下按钮时,旋转框没有出现。
标签: python python-3.x tkinter tk