转换到exe文件tkinter后出现cx_freeze错误。

问题描述 投票:1回答:2

这是我使用的设置文件

import cx_Freeze
import sys
import os
base = None

if sys.platform == 'win32':
    base = "Win32GUI"

os.environ['TCL_LIBRARY'] = r"C:\Users\osama shakeel\AppData\Local\Programs\Python\Python37-32\tcl\tcl8.6"
os.environ['TK_LIBRARY'] = r"C:\Users\osama shakeel\AppData\Local\Programs\Python\Python37-32\tcl\tk8.6"
os.environ['TK_LIBRARY'] = r"C:\Users\osama shakeel\AppData\Local\Programs\Python\Python37-32\tcl\treectrl2.4.1"

executables = [cx_Freeze.Executable("alkhidmat.py", base=base, icon=r"C:\Users\osama shakeel\PycharmProjects\alkhidmat-project\icon.ico")]


cx_Freeze.setup(
    name = "Alkhidmat Management System",
    options = {"build_exe": {"packages":["tkinter"], "include_files":[r"C:\Users\osama shakeel\PycharmProjects\alkhidmat-project\icon.ico",'tcl86t.dll','tk86t.dll', 'icons2']}},
    version = "0.01",
    description = "Tkinter Application",
    executables = executables
    )

而这些都是我正在使用的库。

import tkinter as tk
from tkinter import ttk
from tkcalendar import Calendar, DateEntry
from csv import DictWriter, DictReader
import os
import tkinter
from TkTreectrl import *
import pandas as pd

这是我安装程序后得到的错误,我下载的外部包是TkTreectrl,程序的另一个功能是在当前目录下自动创建csv文件,其中有my(alkhidmat.py)文件。

cx_Freeze: Python error in main script
Traceback (most recent call last):
File "C:\Users\osama
shakeel AppData\Local\Programs\Python Python37-32\lib \site
-packages\cx_Freeze\initscripts _startup_.py", line 40, in run
module.runo
File "C:\Users\osama
shakeel AppData\Local\Programs\Python Python37-32\lib\site
-packages\cx_Freeze\initscripts\Console.py", line 37, in run
exec(code, [name__ main__'})
File "alkhidmat.py", line 1, in <module>
ModuleNotFoundError: No module named 'tkinter
ок
1
python python-3.x tkinter cx-freeze
2个回答
0
投票

我可以给你一个很好的建议,不要使用CX-FREEZE,使用CX-FREEZE。自动对射使用这个模块,你将能够添加一个个人图标到你的应用程序,也可以添加额外的文件,以一个非常简单的方式。此处


-1
投票

试着在你的.lib文件夹中寻找(在你的bulid文件夹中)并将 "Tkinter "文件夹重命名为 "tkinter"

© www.soinside.com 2019 - 2024. All rights reserved.