2016-06-07 1 views
0

입력 상자에 숫자를 입력하는 프로그램을 작성하려고하는데 버튼을 클릭하면 입력 한 번호가 인쇄됩니다 입력 한 숫자에 0.008을 곱합니다.tkinter 모든 항목이 다음 항목에 추가되도록 tkinter 항목 상자에서 번호를 저장하는 방법

그런 다음 숫자를 저장하므로 다음 번에 숫자를 입력하면 이전 숫자에 숫자가 추가되어 인쇄됩니다. 나는 코드의 첫 번째 비트를 작성하고 잘 작동합니다. 그러나 내가 얼마나 많은 연구를했는지에 상관없이 나는 두 번째 비트를 어떻게 수행 하는지를 알 수 없다. 지금까지 내 코드입니다.

from tkinter import * 

def calculatemoney(): 
    done = float(Lines1.get()) 
    salary3 = done * 0.08 
    salary4 = done * 1 


    labelresult = Label(root, text='%.0f' % salary4).grid(row=3, column=2) 
    labelresult = Label(root, text=' £ %.2f' % salary3).grid(row=4, column=2) 

root = Tk() 


root.title('Dict8 Calc') 
root.geometry('250x200+800+100') 
Lines1 = StringVar() 
var1 = Label(root, text='Enter Lines').grid(row=0, column=1) 
var2 = Label(root, text='Lines Today').grid(row=3, column=1) 
var3 = Label(root, text='Money Today').grid(row=4, column=1) 
var4 = Label(root, text='Lines Total').grid(row=6, column=1) 
var5 = Label(root, text='Money Total').grid(row=7, column=1) 
myLines = Entry(root, textvariable=Lines1).grid(row=0, column=2) 

button1 = Button(root, text=' Calculate ', command=calculatemoney).grid(row=8, column=2) 


root.mainloop() 

답변

0

일반 변수를 사용하지 않으려면 어떻게해야합니까?

from tkinter import * 

def calculatemoney(): 
    global oldValue        # Making it global so you can set it's value 
    done = float(Lines1.get()) 
    salary3 = done * 0.08 
    salary4 = done 
    salary5 = (done + oldValue) * 0.8   # Adding the old value to the new one 
    salary6 = done + oldValue 


    Label(root, text='%.0f' % salary4).grid(row=3, column=2)  # I don't recommend this method of putting a label over another every time the user activates this function 
    Label(root, text=' f %.2f' % salary3).grid(row=4, column=2) 
    Label(root, text='%.0f' % salary6).grid(row=6, column=2) 
    Label(root, text=' f %.2f' % salary5).grid(row=7, column=2) 

    oldValue += done   # Adding the current value to the old value 

root = Tk() 

oldValue = 0.0   # Define variable that will represent an old value 

root.title('Dict8 Calc') 
root.geometry('250x200+800+100') 
Lines1 = StringVar() 
var1 = Label(root, text='Enter Lines').grid(row=0, column=1)  # .grid() method returns 'None' so you dont have any use for 'var1'. 
var2 = Label(root, text='Lines Today').grid(row=3, column=1) 
var3 = Label(root, text='Money Today').grid(row=4, column=1) 
var4 = Label(root, text='Lines Total').grid(row=6, column=1)  # Shouldn't it be 'row=5' ? 
var5 = Label(root, text='Money Total').grid(row=7, column=1) 
myLines = Entry(root, textvariable=Lines1).grid(row=0, column=2) 

button1 = Button(root, text=' Calculate ', command=calculatemoney).grid(row=8, column=2) 


root.mainloop() 
+0

니스 하나 Stevo Mitric 나는 파이썬과 Tkinter의에서 아주 새로운 초보자 그리고 난 나는 아직 내가 지금 글로벌 연구하여야 언급하지 않은 보았다 모든 당신 튜브 튜토리얼 전에 글로벌 건너하지 않은 말한대로 감사 – ktm125

관련 문제