python - PyInstaller + tkdnd/tkinterdnd2 启动冻结的 exe 时“无法加载 tkdnd 库”。从脚本启动时工作
问题描述
在我的脚本中,我使用tkinterdnd2
库来实现从 Windows 资源管理器到我的 tkinter UI 的拖放功能。
from tkinterdnd2 import TkinterDnD, DND_FILES
import tkinter as tk
class TkWindow:
def __init__(self):
self.window = TkinterDnD.Tk()
self.tbox = tk.Listbox(self.window)
self.tbox.pack(fill=tk.BOTH)
self.tbox.drop_target_register(DND_FILES)
self.tbox.dnd_bind('<<Drop>>', self.tk_files_dropped)
self.window.mainloop()
def tk_files_dropped(self, event):
messagebox.showinfo("x", event.data)
TkWindow()
当我启动脚本时 - 一切正常。
但是,当我使用 PyInstaller 将项目冻结为单个 EXE 并运行它时,我收到此错误:
我已经尝试过这个解决方案:
解决方案
我--collect-all TkinterDnD2
与大写一起使用。
推荐阅读
- delphi - 大型 Delphi exe 和维护问题
- java - 使用 JAVA 实现 NETIQ IDAM LDAP
- ruby-on-rails - 过滤器链因 :authenticate_user 呈现或重定向而停止
- angular - Angular5 Service Worker 更新(SWUpdate)未在 Firefox 上检测到。在铬上工作
- java - Oreo 中 AppcompactActivity 的 onCreate() 方法上的 IllegalstateException
- ffi - 在编译时使用类型提供程序加载和存储文件
- php - 如何计算mysql和php中多个日期之间的天数?
- matlab - Matlab 创建新的 Microsoft Access 数据库文件 *.accdb
- java - JSON - 无法使用 Jackson 和 JPA 序列化 Object 中的 JSONObject
- apache-spark - 将 Spark 2.3.0 数据集保存为图像格式