Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Após pressionar o botão de login, como obter o valor da entrada do Tkinter e passá-lo para a consulta SQL?


O problema óbvio é que você está recebendo o texto de ambas as entradas logo após a inicialização. As duas variáveis ​​que você está usando para isso não serão alteradas quando o Texto nas Entradas for alterado.

Aqui está um código básico de como recuperar os valores dos dois campos de entrada e passá-los para uma função:
import tkinter as Tk
import tkinter.messagebox


def show_pass_user(password, user):
    # show what we got
    tkinter.messagebox.showinfo("Data received", "Hey just got your username \"" + user + "\"" +
                                " and password \"" + password + "\"")
    # run your sql here


def main():
    root = Tk.Tk()

    entry_user = Tk.Entry(root)
    entry_user.insert(0, "Username")

    entry_pass = Tk.Entry(root)
    entry_pass.insert(0, "Password")

    # use a lambda to get Username and Password when button is pressed
    pressme = Tk.Button(root, text="Press Me", command=lambda:
        show_pass_user(entry_pass.get(), entry_user.get()))

    entry_user.grid()
    entry_pass.grid()
    pressme.grid()
    root.mainloop()

if __name__ == "__main__":
    main()

Este código é executado apenas com Python3!