gpt4 book ai didi

python tkiner实现 一个小小的图片翻页功能的示例代码

转载 作者:qq735679552 更新时间:2022-09-29 22:32:09 28 4
gpt4 key购买 nike

CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.

这篇CFSDN的博客文章python tkiner实现 一个小小的图片翻页功能的示例代码由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.

具体代码如下所示:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
import tkinter as tk
import tkinter.messagebox
import copy
import os,sys
def get_picture(dirs):
'''获得所有图片'''
   picture_list = []
   for dir ,dir_abs,files in os.walk(dirs):
     for file in files:
       if file .endswith( '.gif' ):
         picture_list.append(os.path.join( dir , file ))
   return picture_list
class Window:
   button_list = []
   object_list = []
   pictures = get_picture(picture_path)
   file = pictures[ 0 ]
   is_show = True
   index = 0
   image_file = ''
   def __init__( self ):
     '''创建窗口和frame'''
     self .window = tk.Tk()
     self .window.title( 'my window' )
     self .window.geometry( '600x600' )
     self .frame = tk.Frame( self .window)
     self .frame.pack()
     self .frame_l = tk.Frame( self .frame)
     self .frame_r = tk.Frame( self .frame)
     self .frame_l.pack(side = 'left' )
     self .frame_r.pack(side = 'right' )
     self .frame_ll = tk.Frame( self .frame_r)
     self .frame_rr = tk.Frame( self .frame_r)
     self .frame_ll.pack(side = 'left' )
     self .frame_rr.pack(side = 'right' )
    
   def next_picture( self ):
     '''下一张图片'''
     self .index = self .pictures.index( self . file )
     self .index + = 1
     if self .index < len ( self .pictures):
       self .checkout_button()
       self . file = self .pictures[ self .index]
       self .create_canvas( self . file )
     else :
       self .index = len ( self .pictures) - 1
       tkinter.messagebox.showinfo( '提示' , '已近是最后一张了' )
 
   def checkout_button( self ):
     '''判断列表中是否只有button对象'''
     object_list_copy = copy.copy( self .object_list)
     for ob in self .object_list:
       if ob in self .button_list:
         pass
       else :
         b = object_list_copy.pop( self .object_list.index(ob))
         b.destroy()
     self .object_list = object_list_copy
 
   def pre_picture( self ):
     '''上一页'''
     self .index = self .pictures.index( self . file )
     self .index - = 1
     if self .index > = 0 :
       self .checkout_button()
       self . file = self .pictures[ self .index]
       self .create_canvas( self . file )
     else :
       self .index = 0
       tkinter.messagebox.showinfo( '提示' , '已经是第一张了' )
 
   def show_picture( self ):
     '''展示图片和翻页按钮'''
     self . file = self .pictures[ 0 ]
     if self .is_show:
       self .is_show = False
       self .create_canvas( self . file )
       button1 = tk.Button( self .frame_ll, text = '上一张' , width = 10 , height = 1 , command = self .pre_picture)
       button1.pack()
       button2 = tk.Button( self .frame_rr, text = '下一张' , width = 10 , height = 1 , command = self .next_picture)
       button2.pack()
       self .button_list.append(button1)
       self .button_list.append(button2)
       self .object_list.extend( self .button_list)
     else :
       self .is_show = True
       while self .object_list:
         o = self .object_list.pop()
         o.destroy()
   def new_button( self ):
     '''创建展示按钮'''
     tk.Button( self .frame_l, text = '图片展示' , width = 10 , height = 1 , command = self .show_picture).pack()
 
   def create_canvas( self , file ):
     '''用画布展示图片'''
     self .image_file = tk.PhotoImage( file = file )
     canvas = tk.Canvas( self .frame_r, height = 500 , width = 600 )
     canvas.create_image( 1 , 1 , anchor = 'nw' , image = self .image_file)
     canvas.pack()
     self .object_list.append(canvas)
 
   def run( self ):
     '''主程序调用'''
     self .window.mainloop()
 
if __name__ = = '__main__' :
   w = Window()
   w.new_button()
   w.run()

样式如下:有点丑,不过功能没毛病,就先这么着吧~~~ 。

python tkiner实现 一个小小的图片翻页功能的示例代码

点击图片展示之后 。

python tkiner实现 一个小小的图片翻页功能的示例代码

上一页下一页可以用,再次点击图片展示 。

python tkiner实现 一个小小的图片翻页功能的示例代码

总结 。

到此这篇关于python tkiner实现 一个小小的图片翻页功能的文章就介绍到这了,更多相关python tkiner实现图片翻页内容请搜索我以前的文章或继续浏览下面的相关文章希望大家以后多多支持我! 。

原文链接:https://blog.csdn.net/weixin_44517891/article/details/105806530 。

最后此篇关于python tkiner实现 一个小小的图片翻页功能的示例代码的文章就讲到这里了,如果你想了解更多关于python tkiner实现 一个小小的图片翻页功能的示例代码的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com