我正在使用 tkinter 制作一些简单的程序,它允许我更改我的计算机分辨率。它认为 python IDLE 直接运行时运行良好,但是当我使用 auto-py-to-exe 和 py-installer 将它转换为 EXE 时,tkinter 窗口不会打开并且命令提示符会暂时打开直到关闭本身。起初我以为这是我的代码或模块,因为我的代码使用 winapi,但我在我制作的另一个 tkinter 上尝试过,但这也无法打开转换后的 tkinter exe。
import win32api
import win32con
import pywintypes
from 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()
交互式爱情
相关分类