4

我已经从我放在一起的 python GUI 程序中创建了一个 EXE,就功能而言,这一切都很好,但是每当有人运行它时,他们的屏幕就会变黑一秒钟,然后回到 Windows 并运行该程序。

这是个常见的问题吗?或者它可能是特定于代码的东西(它非常简单,只是一个矩形板的重量计算器)。代码如下(我用cxfreeze打包)。请注意,我并不是真正的 python 程序员,只是似乎是使用 GUI 执行此操作的最简单方法(我使用 easyGUI 来创建它):

import easygui as eg
msg = "Enter Plate Information eg 9600 2400 6"
title = "Plate dimensions"
fieldNames = ["Width", "Length", "thickness"]
fieldValues = []
fieldValues = eg.multenterbox(msg, title, fieldNames)
width = float(fieldValues[0])
length= float(fieldValues[1])
thick= float(fieldValues[2])

(我省略了一些错误检查,因为它只是一个 if-else 语句)

fieldValues = eg.multenterbox(errmsg, title, fieldNames, fieldValues)
total = (width * length * thick * 7.85)
eg.msgbox(total / 1000000, "Kilograms")

它发生在我整理的代码和我为其他事情下载的代码中。任何通过 cxfreeze 的东西。

我认为只是屏幕空白是一个问题,一旦我真正学习了 Python,我就可以改进代码。

4

2 回答 2

2

以防万一其他人遇到这种情况并且正在寻找答案,但不确定“回答我自己的问题是否合适,但无论如何:发生这种情况的原因是因为命令提示符窗口的某处已默认设置为“全屏” ,打开命令提示符窗口,左键单击最左上角以获取下拉框并选择“默认值”,然后确保选择“窗口”并将其应用于所有未来的窗口。

这会停止屏幕的黑色闪烁/空白,因为如果我可以调用 python shell,它会在运行使用 cxfreeze 创建的 EXE 之前在 DOS 窗口中执行。

于 2011-11-24T22:24:34.550 回答
0

cxfreeze程序.py--base-name=Win32GUI

注意:使用该--base-name=Win32GUI选项,控制台窗口将不会出现。

于 2012-04-12T06:19:45.620 回答