ad

通过《Python趣味编程入门与实战》_领略Python的趣味_11.6.2 filedialog 对话框

网友投稿 115 2023-11-13

【摘要】 本书摘自《Python趣味编程入门与实战》一书中第11章,第6节,王征、李晓波著。

11.6.2 filedialog 对话框

通过《Python趣味编程入门与实战》_领略Python的趣味_11.6.2 filedialog 对话框

利用filedialog 对象可以让用户直观地选择一个或者多个文件或者保存文件等操作。

filedialog 对象的常用方法如下askopenfilename() 方法:以对话框的方式打开一个文件,返回值是绝对路径及文件名。

askopenfilenames() 方法:以对话框的方式打开多个文件,返回值是一个元组,在元组中多个文件的绝对路径及文件名。

asksaveasfilename() 方法:以对话框的方式保存多个文件,返回值是绝对路径及保存的文件名。

askdirectory()方法:以对话框的方式打开文件夹,返回值是文件夹的路径及名称。

单击“开始”菜单,打开 Python 3.7.2 Shell 软件,然后单击菜单栏中的 “File/New File” 命令,创建一个Python 文件,并命名为 “Python11-15.py”。

首先导入tkinter 库并重命名为 tk, 然后创建窗体并设置窗体属性,具体代码如下:

import tkinter as tk #导入tkinter 库,并重命名为tk

mywindow =tk.Tk() #创建一个窗体

mywindow.title("filedialog 对话框") #设置窗体的标题

mywindow.geometry("250x200") #设置窗体的大小

接下来,向窗体中添加4个按钮,具体代码如下:

mybut1 =tk.Button(mywindow,text=" 打开文件")

mybut1.pack(expand=1,fill=tk.X,ipady=6)

mybut2 =tk.Button(mywindow,text="打开多个文件")

mybut2.pack(expand=1,fill=tk.X,ipady=6)

mybut3 =tk.Button(mywindow,text="保存文件")

mybut3.pack(expand=1,fill=tk.X,ipady=6)

mybut4 =tk.Button(mywindow,text="打开文件夹")

mybut4.pack(expand=1,fill=tk.X,ipady=6)

单击菜单栏中的 “Run/Run Module” 命令或按下键盘上的 “F5”, 就可以运行程序

代码,效果如图11.44所示。

这时单击窗体上的按钮,是没有任何反应 的。接下来为各个按钮添加command 属性是指定该按钮单击时执行的命令(函数)。

为“打开文件”按钮添加command 属性,

具体代码如下:

mybut1 =tk.Button(mywindow,text="打开文件",command=myopen ) 这样,当单击“打开文件”按钮,就会调用myopen() 函数。

因为要在 myopen() 函数用到 filedialog 对象和 messagebox 对象,所 以要先导入这两个对象,具体方法是,在 import tkinter as tk 后面添加如下

代码:

from tkinter import filedialog #从 tkinter 库中导入filedialog

模块

from tkinter import messagebox #导入messagebox 模块

接下来就可以编写myopen() 函数,具体代码如下:

def myopen():

mya =filedialog.askopenfilename()

messagebox.showinfo(” 提示对话框“,”打开文件的路径是: 8s ”8mya)

需要注意的是,该代码一定要放在创建的4个按钮代码之前。

下面来看一下效果。单击菜单栏中的“Run/Run Module”命令或按下 键盘上的 “F5”, 就可以运行程序代码,然后单击“打开文件”按钮,就会弹出“打开”对话框,如图11.45所示。

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们 18664393530@aliyun.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:通过《Python趣味编程入门与实战》_领略Python的趣味_8.1 面向对象
下一篇:通过《Python趣味编程入门与实战》_领略Python的趣味_8.2 模块
相关文章

 发表评论

暂时没有评论,来抢沙发吧~

×