Python button选取本地图片并显示的实例

yipeiwu_com6年前Python基础

从本地文件夹中选取一张图片并在canvas上显示

from tkinter import *
from tkinter import filedialog
from PIL import Image, ImageTk

if __name__ == "__main__":
  root = Tk()

  #setting up a tkinter canvas with scrollbars
  frame = Frame(root, bd=2, relief=SUNKEN)
  frame.grid_rowconfigure(0, weight=1)
  frame.grid_columnconfigure(0, weight=1)
  xscroll = Scrollbar(frame, orient=HORIZONTAL)
  xscroll.grid(row=1, column=0, sticky=E+W)
  yscroll = Scrollbar(frame)
  yscroll.grid(row=0, column=1, sticky=N+S)
  canvas = Canvas(frame, bd=0, xscrollcommand=xscroll.set, yscrollcommand=yscroll.set)
  canvas.grid(row=0, column=0, sticky=N+S+E+W)
  xscroll.config(command=canvas.xview)
  yscroll.config(command=canvas.yview)
  frame.pack(fill=BOTH,expand=1)


  #function to be called when mouse is clicked
  def printcoords():
    File = filedialog.askopenfilename(parent=root, initialdir="C:/",title='Choose an image.')
    filename = ImageTk.PhotoImage(Image.open(File))
    canvas.image = filename # <--- keep reference of your image
    canvas.create_image(0,0,anchor='nw',image=filename)

  Button(root,text='choose',command=printcoords).pack()
  root.mainloop()

以上这篇Python button选取本地图片并显示的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python去除文件中重复的行实例

python去除文件中重复的行,我们可以设置一个一个空list,res_list,用来加入没有出现过的字符行! 如果出现在res_list,我们就认为该行句子已经重复了,可以再加入到记录...

python pycurl验证basic和digest认证的方法

简介 pycurl类似于Python的urllib,但是pycurl是对libcurl的封装,速度更快。 本文使用的是pycurl 7.43.0.1版本。 Apache下配置Basic认...

使用python获取csv文本的某行或某列数据的实例

使用python获取csv文本的某行或某列数据的实例

站长用Python写了一个可以提取csv任一列的代码,欢迎使用。Github链接 csv是Comma-Separated Values的缩写,是用文本文件形式储存的表格数据,比如如下的表...

python中类的一些方法分析

本文实例分析了python中类的一些方法,分享给大家供大家参考。具体分析如下: 先来看看下面这段代码: class Super: def delegate(self):...

利用numpy实现一、二维数组的拼接简单代码示例

一维数组 1.numpy初始化一维数组 a = np.array([1,2,3]); print a.shape 输出的值应该为(3,) 二维数组 2.numpy初始化二维数组...