Tkinter按钮打开另一个我不想要的窗口

时间:2019-07-10 14:54:20

标签: python tkinter

就像我在标题中所说的,当我单击一个按钮(分析)时,另一个窗口打开,我不想要它。问题是,在分析功能中,第一行是我的tkinter文件的导入。

在此先感谢您的帮助。

我试图删除导入,第二个窗口没有弹出,所以我很确定这是问题所在。此外,我需要在分析函数中进行此导入,因为我已经将其他模块导入了我的tkinter文件中

tkinter文件:

ports=$(netstat -nau | awk -F'[[:space:]]+|:' 'NR>2 && $5>=3000 && $5<=3010')

文件b:

import fileb

def analyser():
    output=fileb.analyse(name)

fenetre = Tk()
fenetre.geometry("800x500")
label = Label(fenetre, text='Emotion Video')
label.pack()

boutonanalyse=Button(fenetre, text='analyze', command=analyser)
boutonanalyse.pack(side=BOTTOM)

1 个答案:

答案 0 :(得分:1)

当您导入Tkinter文件时,您正在运行该文件。这意味着该代码运行了两次,因此您打开了两个窗口。绕过此问题的一种方法是将tkinter设置放入函数中,并在运行它(如果它是主程序的情况下)仅使用以下方式运行该函数:

import fileb

def analyser():
    output=fileb.analyse(name)

def tkSetup():
    fenetre = Tk()
    fenetre.geometry("800x500")
    label = Label(fenetre, text='Emotion Video')
    label.pack()

    boutonanalyse=Button(fenetre, text='analyze', command=analyser)
    boutonanalyse.pack(side=BOTTOM)

if "__name__" == "__main__":
    tkSetup()

if name == main检查程序是否最初运行(我认为是最好的描述方式),因此如果导入文件就不会运行。