2

我使用这个命令来构建我的程序,它会生成一个运行良好的 exe 文件。但是当 tk 程序运行时,它总是以 cmd 控制台程序开头。如何避免这种情况发生?

python -m nuitka --mingw64 *.py

如果我使用--windows-disable-console命令,它将生成一个无法正确显示 tk 程序的 exe 文件。

#encoding=utf-8
import tkinter

from tinter import *
import datetime
import sys,io

sys.stdout = io.TextIOWrapper(sys.stdout.buffer,encoding='utf-8')
class Example(object):
    """docstring for"""
    def __init__(self, date):
        self.date = date
    def main_gui(self):
        parent=Tk()
        parent.resizable(width=False, height=False)
        parent.title("incomeoutcome")
        parent.mainloop()


today=datetime.date.today()
ins_bill=Example(today)
ins_bill.main_gui()
4

1 回答 1

1

删除该行sys.stdout = io.TextIOWrapper(sys.stdout.buffer,encoding='utf-8'),所有程序都将正确运行。这行代码仅有助于在模拟器中显示 utf-8 字符。

于 2020-10-16T13:59:16.603 回答