Tk Inter消息框辅助窗口错误



首先,感谢您在我的帖子中驻足。我是一名python业余作家,我正在GUI中工作以获取一些客户信息,第一步是用户在执行我的应用程序之前确保系统处于打开状态,为此,我使用messagebox.showinfo命令。

但是,此命令还会打开一个辅助窗口(不确定原因(。在互联网上搜索,我意识到最好的方式是使用";退出";。

我的GUI应该有一个图片;照片图像";为此,但出于某种原因,我试图将图片分配到GUI中,它会转到通过messagebox.showinfo.打开的辅助窗口

有人知道为什么我的图片在次要窗口上结束,而不是在我的主GUI中吗?

下面的代码可以在你的电脑中使用,你可能需要用C创建一个文件夹并加载一张图片,这样你就可以看到我在这里看到的东西。

感谢您的光临。

from tkinter import *
import tkinter.messagebox
from tkinter import messagebox
import tkinter as tk
import os
################ To Avoid Parasite Window To Open ##################
##root = tkinter.Tk()
##root.withdraw()
messagebox.showinfo(message="Make sure System is ON", title="My App 1.00")
def configure():
print ("hi")
####################### Main Window Design ##########################
##
#####################################################################
main = tkinter.Tk()
main.resizable(0,0)
main.geometry('490x510+700+50')
main.title('My App 1.00')
Label(main, text='GSYSTEM 1.00', font=("Tahoma", 20)).place(x=5,y=0)
LabelFrame(main, text=' Enter Data: ', font=("Tahoma", 14), height=180, width=480, bd=2, relief='ridge' ).place(x=5,y=100)
#########################  PN  ######################################
tmudir = "C:\System"
os.chdir(tmudir)
Label(main, text='Scan Product :',font=("Tahoma", 12)).place(x=10,y=150)
LabelFrame(main, font=("Tahoma", 10), height=30, width=180, bd=3, relief='ridge').place(x=110,y=147)
pn_label = PhotoImage(file='TNL.png')
Label(image=pn_label).place(x=310,y=120)
####################### Main Window Design JO #######################
##
#####################################################################
LabelFrame(main, text='  ORDER INFO: ', font=("Tahoma", 14), height=100, width=480, bd=2,   relief='ridge' ).place(x=5,y=360)
Label(main, text='Scan   Order:',font=("Tahoma", 12)).place(x=10,y=385)
joborderinfo = Entry(main,font=("Arial Narrow", 12))
joborderinfo.place(x=265,y=385)
########## Main Window Design Buttons Start and Config ##############
##
#####################################################################
power_supply_btn = Button(main, text="START TEST", font=("Tahoma", 21), height=1, width=24, command=configure)
power_supply_btn.place(x=55,y=40)
power_supply_btn.config(state=NORMAL)
mainloop()
SystemExit()

您必须首先创建主窗口,然后使用withdraw()只显示消息。你可以这样做:

import tkinter as tk
from tkinter import messagebox
main = tk.Tk()
main.withdraw()
messagebox.showinfo(message="Make sure System is ON", title="My App 1.00")
main.deiconify() # undo the withdraw() command.
def configure():
print ("hi")
main.resizable(0,0)
main.geometry('490x510+700+50')
main.title('My App 1.00')
# rest of your code

最新更新