(“将军克诺比”)
使用python的tkinter模块,我试图从VB中存在的东西重新创建一个非常复杂的图形界面。一切都还好,直到我决定用包含全局变量的初始化函数使事情变得更加美观和干净。因为,每一个PanedWindow都不会显示。
这是我的初始化函数:
def init():
Tk().withdraw()
global DL_COM1_NAME
DL_COM1_NAME = StringVar()
主要功能与图形化的东西:
def frame_Menu(init):
init()
# graphical user interface (GUI)
# main frame
main_frame = Tk()
...
DL_COM_Panel1 = PanedWindow(orient='horizontal')
DL_COM1 = Label(DL_COM_Panel1,bg='light slate blue',fg='white',font=('Arial','10','bold'),text='first :',anchor='w',relief='sunken',width=8)
DL_COM_Panel1.add(DL_COM1)
DL_COM1_Choice = Entry(DL_COM_Panel1,textvariable=DL_COM1_NAME,width=90)
DL_COM_Panel1.add(DL_COM1_Choice)
DL_COM1_Select = Button(DL_COM_Panel1,text='Browse',command=set_COM1filename)
DL_COM_Panel1.add(DL_COM1_Select)
DL_COM_Panel1.grid(row=7,column=0,columnspan=4,sticky='we',padx=(15,15),pady=(2.5,2.5))
...
main_frame.mainloop()
我在“命令”中使用的 set_COM1filename 函数通过askopenfilename请求文件。
我在这里定义的PanedWindow不会打开,而且每个其他的都是相同的,而一切都在使用局部变量。此外,当我使用命令提示符运行它时,当我单击界面的退出按钮时,该过程不会停止。你知道原因吗?
非常感谢