import sys
from cx_Freeze import setup, Executable
build_exe_options = {'packages': ['os','tkinter','random',
'heapq','collections','sys','pickle']}
base = None
if sys.platform == "win32":
base = "Win32GUI"
setup( name = 'Game',
version = '0.02',
description = 'My GUI application!',
options = {'build_exe': build_exe_options},
executables = [Executable('Game.py', base=base)])
这是设置的代码
from tkinter import *
value_a = 'hahaha'
a =messagebox.showinfo('laugh',value_a)
以及将执行的代码
当我在cmd中输入Nameerorr : name "messagebox" is not defined
或python 123.py build
时,erorr为python haha.py build
我已经使用过import *
,如果我运行的代码显示消息,但cmd和.exe
我应该使用import tkinter as tk
吗?但是通过添加“tk”很难读取我的代码,我想保留import *
,这样就不需要“tk.xxx”了,它仍然适用于exe。
答案 0 :(得分:0)
from tkinter import *
不适用于 messagebox ,因此您必须单独导入消息框,如下所示
from tkinter import messagebox
答案 1 :(得分:0)
我也有这个问题。它在IDE中运行正常,但在直接运行模式下运行不正常。
添加import tkinter.messagebox as messagebox
修复了问题。
谢谢,G。