购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

3.5 销毁窗口

既然有新建窗口,当然就有销毁窗口。在OpenCV中,销毁窗口时窗口会自动关闭,这可以通过函数destroyWindow和destroyAllWindows来实现,前者是销毁某一个指定名称的窗口,后者是销毁所有新建的窗口。函数destroyWindow声明如下:

destroyWindow(winname) -> None

参数winname是要销毁窗口的名称。

函数destroyAllWindow更加简单,声明如下:

destroyAllWindows() -> None

下面我们来新建3个窗口,每个窗口显示5秒,再分别销毁。

【例3.7】 销毁3个窗口

import cv2 as cv
import numpy as np #导入numpy模块

szName = ["", "", ""]
srcImage=[1,3]
for i in range(0,2):
    szName[i] = ( "%d.jpg") % (i+1)
    srcImage[i] = cv.imread(szName[i]); #读取图片文件
    cv.imshow(szName[i], srcImage[i]);#在“窗口1”中输出图片
    cv.waitKey(5000);#等待5秒,程序自动退出;改为0,不自动退出
    cv.destroyWindow(szName[i]);
print("所有的窗口已经销毁了")
cv.waitKey(0);

在上述代码中,我们在for循环中读取图片文件,然后新建窗口,并在窗口中显示图片5秒钟后销毁窗口。如果不想在for循环里调用destroyWindow函数,也可以在for循环外面调用destroyAllWindows函数,这样3个窗口都显示后再一起销毁。

运行工程,结果如图3-8所示。

图3-8 pXi9z1ynJzojJQLlRSD0JojciDafI4WcX0emUG8KKcNI0dedfHQ1Uvs3y2ZatFmB

点击中间区域
呼出菜单
上一章
目录
下一章
×