为了账号安全,请及时绑定邮箱和手机立即绑定

tkinter 转换为 exe 打不开

tkinter 转换为 exe 打不开

MYYA 2023-05-16 16:43:10
我正在使用 tkinter 制作一些简单的程序,它允许我更改我的计算机分辨率。它认为 python IDLE 直接运行时运行良好,但是当我使用 auto-py-to-exe 和 py-installer 将它转换为 EXE 时,tkinter 窗口不会打开并且命令提示符会暂时打开直到关闭本身。起初我以为这是我的代码或模块,因为我的代码使用 winapi,但我在我制作的另一个 tkinter 上尝试过,但这也无法打开转换后的 tkinter exe。import win32apiimport win32conimport pywintypesfrom tkinter import *def quit():    main_window.destroy()def main():    global option    option = StringVar()        main_window.geometry("300x200")    main_window.title("change resolution")    selected_label = Label(main_window, textvariable = option, font = 'Arial 15 bold')    selected_label.grid(column=0, row=0)    choose_label = Label(main_window, text = "Please choose an option")    choose_label.grid(column=0, row=1)    defaultbutton = Button(main_window, text= 'default', command = default)    defaultbutton.grid(column=0, row=2)    teamviewerbutton = Button(main_window, text= 'teamviewer', command = teamviewer)    teamviewerbutton.grid(column=1, row=2)    quitbutton = Button(main_window, text = 'quit', command = quit)    quitbutton.grid(column=1, row=0)        def default():    option.set("default")        devmode = pywintypes.DEVMODEType()    devmode.PelsWidth = 3440    devmode.PelsHeight = 1440    devmode.Fields = win32con.DM_PELSWIDTH | win32con.DM_PELSHEIGHT    win32api.ChangeDisplaySettings(devmode, 0)def teamviewer():    option.set("teamviwer")    devmode = pywintypes.DEVMODEType()    devmode.PelsWidth = 1920    devmode.PelsHeight = 1080    devmode.Scale = 2    devmode.Fields = win32con.DM_PELSWIDTH | win32con.DM_PELSHEIGHT    win32api.ChangeDisplaySettings(devmode, 0)main_window = Tk()main()
查看完整描述

1 回答

?
交互式爱情

TA贡献1712条经验 获得超3个赞

距离我上次使用它已经有一段时间了。


main_window.mainloop()


or


[root tk].mainloop()

这应该放在代码的底部,就在 main() 的下面。


查看完整回答
反对 回复 2023-05-16
  • 1 回答
  • 0 关注
  • 173 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信