Python Forum
Problem with Submit button Tkinter
Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Problem with Submit button Tkinter
#1
HI, If you take a look on my precedent code , I managed to do it. The issue is when I press the button "make_it", it prints me 0, so I think that nothing happened and the values that I registered weren't taken.
Btw, the function "calcul_fonctionnaire" is just a function in which I take all the values and make some calculation and gives me a list of 2 int in it
def retraite_fonctionnaire():
    i=input("Entrez votre nom: ")
    k=input("Quelle est votre année de naissance ?: ")
    revenu_moyen=int(input("Quel est votre salaire mensuel sur ces 6 derniers mois?: "))
    trimestre_cotisés = int(input("Combien de trimestres avez vous cotisé ?: " ))
    enfants = int(input("Combien avez vous d'enfants ?: " ))
    L = calcul_fonctionnaire(i,k,revenu_moyen,trimestre_cotisés,enfants)
    return L


window= Tk()
window.title("Application de retraite")
window.geometry("640x640")


label1= Label(window,text="Entrez votre nom: ",font=("arial",15,"bold"), fg="black").place(x=20, y=200)
i= StringVar()
entry_box1= Entry(window, textvariable="i", bg="gray", width="15").place(x=300,y=200)



label2= Label(window,text="Quelle est votre année de naissance?: ",font=("arial",15,"bold"), fg="black").place(x=20, y=300)
k= int()
entry_box2= Entry(window, textvariable="k", bg="gray", width="15").place(x=300,y=300)



label3= Label(window,text="Quel est votre revenu mensuel sur vos vingt-cinq meilleures années ?: ",font=("arial",15,"bold"), fg="black").place(x=20, y=400)
revenu_moyen= int()
entry_box3= Entry(window, textvariable="revenu_moyen", bg="gray", width="15").place(x=300,y=400)



label4= Label(window,text="Combien de trimestres avez vous cotisé ?: ",font=("arial",15,"bold"), fg="black").place(x=20, y=500)
trimestre_cotisés= int()
entry_box4= Entry(window, textvariable="trimestre_cotisés", bg="gray", width="15").place(x=300,y=500)




label5= Label(window,text="Combien avez vous d'enfants ?: ",font=("arial",15,"bold"), fg="black").place(x=20, y=600)
enfants=int()
entry_box5 = Entry(window, textvariable="enfants", bg="gray", width="15").place(x=300,y=600)

calcul_salarie(i,k,revenu_moyen,trimestre_cotisés,enfants)



def do_it():
    calcul_salarie(i,k,revenu_moyen,trimestre_cotisés,enfants)
    print(calcul_salarie(i,k,revenu_moyen,trimestre_cotisés,enfants))
    
make_it= Button(window, text="PRINT", width="30", height="20",command=do_it,bg="lightblue").place(x=500, y=500)
    
window.mainloop()
Reply
#2
replace all "int()" with "IntVar()" e.g. k= IntVar()
remove all "" from textvariable="i", ="k", ="revenu_moyen" ... correct is textvariable=i
Reply
#3
from tkinter import *

window = Tk()
window.title("Application de retraite")
window.geometry("640x640")
 
 
label1 = Label(window,text="Entrez votre nom: ",font=("arial",15,"bold"), fg="black").place(x=20, y=200)
i= StringVar()
entry_box1= Entry(window, textvariable=i, bg="gray", width="15").place(x=300,y=200)
 
 
label2= Label(window,text="Quelle est votre année de naissance?: ",font=("arial",15,"bold"), fg="black").place(x=20, y=300)
k= IntVar()
entry_box2= Entry(window, textvariable=k, bg="gray", width="15").place(x=300,y=300)
 
 
label3= Label(window,text="Quel est votre revenu mensuel sur vos vingt-cinq meilleures années ?: ",font=("arial",15,"bold"), fg="black").place(x=20, y=400)
revenu_moyen= IntVar()
entry_box3= Entry(window, textvariable=revenu_moyen, bg="gray", width="15").place(x=300,y=400)
 
 
label4= Label(window,text="Combien de trimestres avez vous cotisé ?: ",font=("arial",15,"bold"), fg="black").place(x=20, y=500)
trimestre_cotisés= IntVar()
entry_box4= Entry(window, textvariable=trimestre_cotisés, bg="gray", width="15").place(x=300,y=500)
 
 
label5= Label(window,text="Combien avez vous d'enfants ?: ",font=("arial",15,"bold"), fg="black").place(x=20, y=600)
enfants=IntVar()
entry_box5 = Entry(window, textvariable=enfants, bg="gray", width="15").place(x=300,y=600)

 
def do_it():
    print(i.get(), k.get(), revenu_moyen.get(), trimestre_cotisés.get(), enfants.get())

     
make_it = Button(window, text="PRINT", width="18", height="9",command=do_it,bg="lightblue").place(x=500, y=470)
     
window.mainloop()
you must use .get()
Reply


Possibly Related Threads…
Thread Author Replies Views Last Post
  [Tkinter] TKinter Remove Button Frame Nu2Python 8 818 Jan-16-2024, 06:44 PM
Last Post: rob101
  tkinter - touchscreen, push the button like click the mouse John64 5 746 Jan-06-2024, 03:45 PM
Last Post: deanhystad
  Centering and adding a push button to a grid window, TKinter Edward_ 15 4,380 May-25-2023, 07:37 PM
Last Post: deanhystad
  [Tkinter] Trying to add data into a shelf from a submit button TWB 8 1,809 Jan-06-2023, 11:30 PM
Last Post: TWB
  Can't get tkinter button to change color based on changes in data dford 4 3,363 Feb-13-2022, 01:57 PM
Last Post: dford
  Creating a function interrupt button tkinter AnotherSam 2 5,418 Oct-07-2021, 02:56 PM
Last Post: AnotherSam
  [Tkinter] Have tkinter button toggle on and off a continuously running function AnotherSam 5 4,920 Oct-01-2021, 05:00 PM
Last Post: Yoriz
  problem with radio button crook79 3 3,627 Aug-12-2021, 02:30 PM
Last Post: deanhystad
  tkinter showing image in button rwahdan 3 5,521 Jun-16-2021, 06:08 AM
Last Post: Yoriz
  tkinter button image Nick_tkinter 4 3,961 Mar-04-2021, 11:33 PM
Last Post: deanhystad

Forum Jump:

User Panel Messages

Announcements
Announcement #1 8/1/2020
Announcement #2 8/2/2020
Announcement #3 8/6/2020