0

I've been making an Arithmetic Progression program in Tkinter but I don't know how to get the output from the terminal and show in the label. Is there a way to do this?

FRONT END

import backend as bck
from tkinter import *

r=Tk()
r.geometry("500x250")
x=IntVar()
y=IntVar()
z=IntVar()
   
l1=Label(r, text="First Value")
l1.grid(row=0,column=0)

l2=Label(r, text="Razão")
l2.grid(row=0,column=2)

l3=Label(r, text="Number Of Therms")
l3.grid(row=2,column=2)
    #entries
e1=Entry(r,textvariable=x)
e1.grid(row=0,column=1)

e2=Entry(r,textvariable=y)
e2.grid(row=0,column=3)

e3=Entry(r,textvariable=z)
e3.grid(row=2,column=3)


list1=Listbox(r, height=10,width=25)
list1.grid(row=1,column=0,rowspan=6,columnspan=2)


   
b1=Button(r,text="Run",command=lambda :bck.add(x.get(),y.get(), z.get()))
b1.grid(row=3,column=3)
r.mainloop()

 

BACK END

def add(a, b, c):
    for c in range(a , (a + (c - 1) * b) + b, b):
        print(c, end=' ')
gsx
  • 41
  • 3

1 Answers1

1

I do want to show the terminal results in the Tkinter GUI

def on_run():
    list1.insert('end', bck.add(x.get(),y.get(), z.get()) + '\n')

b1=Button(r,text="Run",command=on_run)

...

# BACK END

def add(a, b, c):
    result = []
    for c in range(a , (a + (c - 1) * b) + b, b):
        print(c, end=' ')
        result.append(c)

    return ' '.join(result)
stovfl
  • 14,998
  • 7
  • 24
  • 51