python弹窗获得excel文件位置并且过滤文件
def load_or_save_excel_file(bOpen):
# bOpen为True代表打开,False代表保存
# 过滤文件后缀 https://www.programcreek.com/python/example/92919/win32ui.CreateFileDialog
# http://timgolden.me.uk/pywin32-docs/win32ui__CreateFileDialog_meth.html
# '*.xls;*.xlsx||'
# 需要pywin32这个库
import win32ui
# 过滤出文件结尾为 xlsx 与 xls
filename_filter = "文件类型 (*.xls)|*.xls|文件类型 (*.xlsx)|*.xlsx||"
dlg = win32ui.CreateFileDialog(1 if bOpen else 0, None, None, 1, filename_filter, None) # 1表示打开文件对话框
# dlg.SetOFNInitialDir('E:/Python') # 设置打开文件对话框中的初始显示目录
# 返回是否完成操作 1代表完成选取文件
flag = dlg.DoModal() # 成功选中文件地址 返回文件名,失败返回 None
if 1 == flag:
return dlg.GetPathName()
else:
return None
python windows弹窗
def message_box(title, msg):
# 桌面弹出消息框
# Python弹出MessageBox http://www.bubuko.com/infodetail-255690.html
import ctypes
ctypes.windll.user32.MessageBoxW(0, msg, title, 1)
def get_save_path():
# 获取保存的文件夹
# 当前并没有使用到
import win32gui
from win32com.shell import shell, shellcon
desktop_pidl = shell.SHGetFolderLocation(0, shellcon.CSIDL_DESKTOP, 0, 0)
pidl, display_name, image_list = shell.SHBrowseForFolder(
win32gui.GetDesktopWindow(),
desktop_pidl,
"Choose a folder",
0,
None,
None
)
# 获取
print(shell.SHGetPathFromIDList(pidl))
l = shell.SHGetPathFromIDList(pidl)
print(l)
return l