是否有方法知道使用 namedWindow 创建的窗口数量,或者我是否应该使用全局变量或类似的方法?
iszxjhcz1#
正如@berak和@Micka评论的那样,目前还没有办法做到这一点。如果你想编写自己的 * 特定于平台的 * 实现来完成这个任务,我建议你看看cvDestroyAllWindows()的实现,这是一个per-platform implementation,但是它会遍历所有用 namedWindow 或 imshow 打开的窗口。
cvDestroyAllWindows()
slhcrj9b2#
import cv2 cv2.imread("nums/lon.png") pictures = [] pictures.append(["picture 1 ", cv2.imread("nums/lon.png")]) pictures.append(["picture 2 ", cv2.imread("nums/lon.png")]) pictures.append(["picture 3 ", cv2.imread("nums/lon.png")]) for picture in pictures: name, pic = picture cv2.imshow(name, pic) while True and len(pictures) > 0: key = cv2.waitKey(150) for c, picture in enumerate(pictures): name, pic = picture if (key == 27) or cv2.getWindowProperty(name,cv2.WND_PROP_VISIBLE) < 1: pictures = pictures[0:c]+pictures[c+1:] cv2.destroyAllWindows()
2条答案
按热度按时间iszxjhcz1#
正如@berak和@Micka评论的那样,目前还没有办法做到这一点。
如果你想编写自己的 * 特定于平台的 * 实现来完成这个任务,我建议你看看
cvDestroyAllWindows()
的实现,这是一个per-platform implementation,但是它会遍历所有用 namedWindow 或 imshow 打开的窗口。slhcrj9b2#