【问题标题】:Output from tkinter in pythonpython中tkinter的输出
【发布时间】:2020-10-12 08:08:27
【问题描述】:

我一直在 Tkinter 中制作算术进度程序,但我不知道如何从终端获取输出并显示在标签中。有没有办法做到这一点?

前端

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()

 

后端

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

【问题讨论】:

标签: python tkinter


【解决方案1】:

我确实想在 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)

【讨论】:

  • @GabrielSalvatore 你试过了吗?您遇到了哪个错误?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-05-28
  • 1970-01-01
  • 2015-04-25
  • 2020-09-21
  • 2020-04-10
  • 1970-01-01
相关资源
最近更新 更多