问题描述
我正在尝试使用tkinter和opencv创建一个二维扫描仪。按下QR扫描按钮后,camara将在新框架中打开,并提供完美的结果。我想要的是当按下按钮时,camara应该在同一tkinter窗口中打开,而不是在新框架中打开
代码:
import tkinter as tk
import cv2
import numpy as np
import pyzbar.pyzbar as pyzbar
window=tk.Tk()
window.title("SCANNER")
window.geometry("500x500")
window.config(background='black')
window.maxsize(500,500)
def scan():
cap = cv2.VideoCapture(0)
font = cv2.FONT_HERShey_PLAIN
while True:
_,frame = cap.read()
decodedobjects = pyzbar.decode(frame)
for obj in decodedobjects:
# print("Data",obj.data)
scanned.config(text=obj.data)
cv2.putText(frame,str(obj.data),(50,50),font,2,(255,0),3)
cv2.imshow("Frame",frame)
key = cv2.waitKey(1)
if cv2.getwindowProperty('Frame',cv2.WND_PROP_VISIBLE)<1:
break
cv2.destroyAllWindows()
but3 = tk.Button(window,text="SCAN QR CODE",width=30,font=("Ariel Bold",15),bg='blue',command=scan)
but3.place(x=100,y=160)
scanned = tk.Label(window,text="RESULT",15))
scanned.place(x=100,y=200)
window.mainloop()
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)