**背景:**图片多的时候,有时会想自己整个幻灯片功能来播放图片,在播放图片过程中还可以夹杂些自己想做的操作,方便搜集想要的图片;
初步摸索了下,整了个初稿先实现幻灯片的播放。
一 获取相应文件夹下的图片,并循环化
#获取文件夹中图片列表
def get_pics_list(pics_dir):
im_list = []
for root, dirs, files in os.walk(pics_dir):
for f in files:
if f.split('.')[-1].lower() in type_list:
im_list = im_list + [os.path.join(root, f)]
return im_list
#获取图片列表,并将列表进行循环化################################################
imgs_list=[] #图片列表
imgs_list = imgs_list + get_pics_list(pic_path)
print(imgs_list)
img_list_cycle = cycle(imgs_list) #循环化
二 幻灯片循环的核心函数
需要传入参数tk.Toplevel() 和 tk.Canvas()参数
#############幻灯片循环函数####################################################
def slideShow(subwnd, cvs, w, h):
#PhotoImage的结果(img_file)需申明为全局变量,推测可能是函数中的局部变量在函数执行完就会被回收,导致不显示图片
global img_file, img_list_cycle
img_path = next