关于python tkinter 点击按钮选择文件,返回文件路径,这个方法我找了好几天,终于曲线救国实现了
首先分为两步
1、设计对话框选择文件
下面的代码搞了好几天,才发现全局变量的获取,必须放在root.mainloop的最后,反正网上都是坑,都TM复制,找100份资料,99份一样!!!
话不多说上代码
import tkinter
from tkinter import filedialog
root = tkinter.Tk()
root.title('路径选择')
max_w, max_h = root.maxsize()
root.geometry(f'500x300+{int((max_w - 500) / 2)}+{int((max_h - 300) / 2)}')
root.resizable(width=False, height=False)
label = tkinter.Label(root, text='选择文件:', font=('华文彩云', 15))
label.place(x=50, y=80)
label2 = tkinter.Label(root, text='选择文件:', font=('华文彩云', 15))
label2.place(x=50, y=155)
entry_text = tkinter.StringVar()
entry = tkinter.Entry(root, textvariable=entry_text, font=('FangSong', 10), width=30, state='readonly')
entry.place(x=150, y=85)
entry_text2 = tkinter.StringVar()
entry2 = tkinter.Entry(root, textvariable=entry_text2, font=('FangSong', 10), width=30, state='readonly')
entry2.place(x=150, y=155)
a = []
def get_path():
global a
path1 = filedialog.askopenfilename(title='请选择文件')
a.append(path1)
entry_text.set(path1)
return path1
def get_path2():
global a
path2 = filedialog.askopenfilename(title='请选择文件')
a.append(path2)
entry_text2.set(path2)
return path2
def f1():
button = tkinter.Button(root, text='选择路径', command=get_path)
button.place(x=400, y=75)
def f2():
button2 = tkinter.Button(root, text='选择路径', command=get_path2)
button2.place(x=400, y=155)
root.mainloop()
def get_file_list():
return a
为这个py文件随便取个英文名
第一步复制我的就ok
2、在想要获取文件名的新建的py文件中导入刚刚 selec_file.py
如图所示!即可获取刚刚对话框中的文件路径!!你就可以为所欲为了!!
话不多说,上代码
import select_file
select_file.f1()
select_file.f2()
a = select_file.get_file_list()
print(a[0])
print(a[1])
一个坑,一个坑才出来的,虽然就是一个代码的位置,但是卡了好久,各位也别笑话我
关注收藏没毛病吧