Python 如何让pyinstaller导入ttk主题?

Python 如何让pyinstaller导入ttk主题?,python,pyinstaller,Python,Pyinstaller,我有一个项目完成,它是在下面 import tkinter as tk from tkinter import ttk import tkinter.messagebox as tmb from ttkthemes import ThemedStyle class UI(ttk.Frame): def __init__(self, parent=None): super(UI, self).__init__(parent) self.parent =

我有一个项目完成,它是在下面

import tkinter as tk
from tkinter import ttk
import tkinter.messagebox as tmb
from ttkthemes import ThemedStyle

class UI(ttk.Frame):
    def __init__(self, parent=None):
        super(UI,  self).__init__(parent)
        self.parent = parent
        style = ThemedStyle(parent)
        style.set_theme("arc")
        self.parent.geometry("480x520")
        self.init_ui()

    def init_ui(self):
        self.parent.title("Nueva ventana heredada")
        self.entrada = ttk.Entry(self, text="ingresa")
        self.entrada.grid(row=2, column=2) 
        boton = ttk.Button(self, text="pulsame", command=self.ver)
        boton.grid(row=2, column=3)
        self.pack()

    def ver(self):
        try:
            res = int(self.entrada.get())
            print(res)
        except ValueError:
            tmb.showwarning(title = "error", message = " error")

if __name__== '__main__':
    root = tk.Tk() 
    sug = tk.Label(root, text="aqui es para escribir")
    sug.pack()
    app = UI(parent=root)
    app.mainloop()
当我使用pyinstaller创建exe时,它会释放导出的exe程序无法执行的错误:下面我将其保留为使用状态,应该注意的是,我已将thema用于该程序,我怀疑它是否已导入

pyinstaller——带窗口的ui.py-i icono.ico——onefile

错误

致命错误! 无法执行脚本ui

到类似的url

代码对我很有效。。看起来您尚未成功导入TTK主题,即未正确安装。因此,你应该再做一次。要安装ttkthemes(假设您已经有python3和安装工具):


这应该可以很好地工作。

代码对我来说很好。。看起来您尚未成功导入TTK主题,即未正确安装。因此,你应该再做一次。要安装ttkthemes(假设您已经有python3和安装工具):


这应该可以很好地工作。

因为ttkthemes似乎对directorys做了一些有趣的事情,您可以通过修改spec文件来让它工作

从pyinstaller为您的应用程序生成specfile,并添加以下内容(根据需要更改站点包的路径)

a=分析(………
datas=[],
更改为:

data=[('venv\\Lib\\site packages\\ttkthemes','ttkthemes'),

并将TTK主题添加到隐藏导入

hiddenimports=['ttkthemes',


这对我来说似乎是可行的

因为TTK主题似乎对directorys做了一些有趣的事情,您可以通过修改spec文件来让它工作

从pyinstaller为您的应用程序生成specfile,并添加以下内容(根据需要更改站点包的路径)

a=分析(………
datas=[],
更改为:

data=[('venv\\Lib\\site packages\\ttkthemes','ttkthemes'),

并将TTK主题添加到隐藏导入

hiddenimports=['ttkthemes',

这似乎对我有用

sudo apt-get install python3-tk
sudo -H pip3 install ttkthemes