-
添加进度组件
pythondef download(): # 创建下载进度框 progress_window = tk.Toplevel() progress_window.title("下载进度") progress_label = tk.Label(progress_window, text="正在下载视频文件...") progress_label.pack(pady=10) progress_bar = ttk.Progressbar(progress_window, orient="horizontal", length=300, mode="determinate") progress_bar.pack(pady=10) # 获取窗口宽高并居中显示 progress_window.update_idletasks() window_width = progress_window.winfo_width() window_height = progress_window.winfo_height() screen_width = progress_window.winfo_screenwidth() screen_height = progress_window.winfo_screenheight() x = (screen_width - window_width) // 2 y = (screen_height - window_height) // 2 progress_window.geometry(f"{window_width}x{window_height}+{x}+{y}") -
创建进度更新方法
pythondef update_progress(progress): progress_bar['value'] = progress progress_window.update_idletasks() -
调用下载方法,传入进度更新方法
pythonls_setoption.get_dump_video(video_dir, progress_callback=update_progress) progress_window.destroy() -
使用子线程调用下载方法,注意用子线程,否则下载过程UI会卡死,进度不更新
pythondownload_thread = threading.Thread(target=download) download_thread.start()
python使用tkinter添加下载进度UI
ChatGPT攻城狮2024-07-10 7:03
相关推荐
段一凡-华北理工大学4 小时前
工业智能体:从Codex/Claude到项目实战~系列文章05:从“AI助手“到“工业智能体“:能力跃迁与落地范式深蓝AI4 小时前
ContextVar 到线程池就丢了?asyncio.to_thread 和 run_in_executor 实测岁月宁静5 小时前
什么是 Agent:从"会聊天"到"会做事"岁月宁静5 小时前
AI 应用开发工程师简历怎么写:HR 初筛、技术复筛、面试追问,三道关卡各看什么?来让爷抱一个6 小时前
Python 异步里混用同步库,事件循环被卡住的全过程小肝一下8 小时前
3.基础语法(3)深蓝AI8 小时前
Python 子进程树:父进程被杀后,孙进程为何还在跑?心祭丫丫9 小时前
【每天一个 Python 小案例17】Python 实现通讯录爱你真是太好了9 小时前
Skill 索引瘦身与渐进加载贾公子9 小时前
检测链路的容量规划——用 Little's Law 算清 QPS、并发与积压