将命令分配给按钮 - Tkinter

时间:2016-07-26 12:35:32

标签: python tkinter

我想知道我必须将哪个命令分配给我的Tkinter GUI中的按钮才能打印结果。

设置是运行aaaa.py。

def question():
    import xxxx
    return xxxx.hoeveel()


if __name__ == '__main__':
    from bbbb import response
    def juist():
        return response()
    print juist()

运行aaaa.py时,我得到一个基于脚本xxxx.py的Tkinter GUI

from Tkinter import *
import ttk



def hoeveel():
    return int(x=gewicht.get(), base=10)

frame = Tk()

gewicht = StringVar()

a = Label(frame, text="Wat is uw gewicht in kilogram?:").grid(row=1, column=1, sticky='w')
aa = Entry(frame, text="value", textvariable=gewicht, justify='center', width=10)
aa.grid(row=1, column=2, padx=15)

bereken = ttk.Button(frame, text='Bereken')
bereken.grid(column=1, row=2, columnspan=2, ipadx=15, pady=25)
mainloop()

Tkinter GUI xxxx.py中给出的输入发送到bbbb.py进行一些计算。

from aaaa import question
mass_stone = question() * 2.2 / 14


def response():
    return str("Uw gewicht in kilograms is gelijk aan " + ("{0:.5}".format(mass_stone)) + " stone.")

我的问题是,当我关闭Tkinter窗口时,我只得到输出“以千克为单位的Uw gewicht是gelijk aan”x(取决于值输入)“石头。

我想在按下按钮时得到结果。

任何提示?

1 个答案:

答案 0 :(得分:1)

我想我找到了答案,但我不确定这是最优雅的方式。 如果你知道一种不同的方式和更正确的方式,请让我们知道。

所以,你需要运行aaaa.py

import xxxx
def question():
    return xxxx.hoeveel()
  

xxxx.py

from Tkinter import *
import ttk
import bbbb

def hoeveel():
    return int(x=gewicht.get(), base=10)

frame = Tk()

gewicht = StringVar()

a = Label(frame, text="Wat is uw gewicht in kilogram?:").grid(row=1, column=1, sticky='w')
aa = Entry(frame, text="value", textvariable=gewicht, justify='center', width=10)
aa.grid(row=1, column=2, padx=15)

bereken = ttk.Button(frame, text='Bereken', command=bbbb.berekening)
bereken.grid(column=1, row=2, columnspan=2, ipadx=15, pady=25)
mainloop()

最后

  

bbbb.py

from aaaa import question
def berekening():
    mass_stone = question() * 2.2 / 14
    print mass_stone

当你运行aaaa.py时,你会得到Tkinter Gui的问题。 填写你的体重,然后按" Bereken" 你会得到我想要的答案。