美文网首页
python windows弹窗

python windows弹窗

作者: lmsly | 来源:发表于2020-05-20 16:53 被阅读0次

    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
    

    转载自:https://www.jianshu.com/p/e51f1ae24124

    相关文章

      网友评论

          本文标题:python windows弹窗

          本文链接:https://www.haomeiwen.com/subject/rzynohtx.html