Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/325.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用python中的tkinter在同一GUI中创建单个小部件_Python_Tkinter - Fatal编程技术网

如何使用python中的tkinter在同一GUI中创建单个小部件

如何使用python中的tkinter在同一GUI中创建单个小部件,python,tkinter,Python,Tkinter,我试图创建一个有两个按钮的GUI:一个检查用户是否提供了所有必需的输入,另一个运行后端脚本。我的问题是,只要用户想要执行后端任务,这个GUI就会一直运行。问题是:每次用户单击“检查”按钮时,就会在上次创建的按钮下方创建另一个“运行”按钮。我需要每次单击检查按钮时在同一位置创建“运行”按钮。顺便说一句,我是python的新手。如果有人能告诉我我是否完全错了,我将不胜感激。谢谢 def verifica(): fluxo=vfluxo.get() permissoes=vpe

我试图创建一个有两个按钮的GUI:一个检查用户是否提供了所有必需的输入,另一个运行后端脚本。我的问题是,只要用户想要执行后端任务,这个GUI就会一直运行。问题是:每次用户单击“检查”按钮时,就会在上次创建的按钮下方创建另一个“运行”按钮。我需要每次单击检查按钮时在同一位置创建“运行”按钮。顺便说一句,我是python的新手。如果有人能告诉我我是否完全错了,我将不胜感激。谢谢

def verifica():

    fluxo=vfluxo.get()   
    permissoes=vpermissoes.get()
    results = vresults.get()


    if fluxo==2:
        label4 = Label(setup_window, text='Quantas tentativas (1-20)?')
        label4.pack()
        tentativas = Entry(setup_window)
        tentativas.pack()

    else:
        label5 = Label(setup_window, text='Ready!')
        label5.pack()

    def bot_setup():

        if fluxo==2:
            num_tentativas = tentativas.get()
            if num_tentativas == '' or int(num_tentativas) > 20:
            num_tentativas=0
            messagebox.showerror('ERRO!','Digite um tamanho de lote válido (1 a 20)')

        else:
            num_tentativas=1

        setup = {

            'tipo_operacao':fluxo,
            'permissoes':permissoes,
            'mostrarnofim':results,
            'tamanho_lote':int(num_tentativas)    
                }

        return setup

    comecar = Button(text='Run', command = bot_setup)
    comecar.pack()



verificar = Button(text='Check', command = verifica)
verificar.pack()

欢迎来到堆栈溢出。你能修改你代码的格式吗?查看您是否不知道如何在堆栈溢出时格式化代码。这是因为您每次单击
检查
-按钮时都会创建一个运行按钮。您只需在
verifica()
函数外创建
Run
-按钮即可。这是您正在运行的实际代码吗?用相同的格式?因为
bot\u setup()
函数是在
verifica()
方法中定义的(这是允许的,但在这种情况下似乎奇怪/无效),而且创建“Run”按钮的代码是
verifica()
函数的一部分。如果没有更多的信息,这可能是您的问题的原因。如果不是这样,请提供一个如果你想要一个更有用的答案。谢谢你的提示,西蒙。我试过了,但“运行”按钮不再出现。现在,我将只使用一个按钮来完成所有操作。再次感谢!这也是问题所在,沃瓦诺。但由于最后期限,我决定只按一个按钮。这里是堆栈溢出。你能修改你代码的格式吗?查看您是否不知道如何在堆栈溢出时格式化代码。这是因为您每次单击
检查
-按钮时都会创建一个运行按钮。您只需在
verifica()
函数外创建
Run
-按钮即可。这是您正在运行的实际代码吗?用相同的格式?因为
bot\u setup()
函数是在
verifica()
方法中定义的(这是允许的,但在这种情况下似乎奇怪/无效),而且创建“Run”按钮的代码是
verifica()
函数的一部分。如果没有更多的信息,这可能是您的问题的原因。如果不是这样,请提供一个如果你想要一个更有用的答案。谢谢你的提示,西蒙。我试过了,但“运行”按钮不再出现。现在,我将只使用一个按钮来完成所有操作。再次感谢!这也是问题所在,沃瓦诺。但由于最后期限,我决定只按一个按钮。谢谢