如何通过函数调用文本并将其打印在Tkinter GUI上?

时间:2019-04-22 11:02:47

标签: python python-3.x matplotlib tkinter tkinter-canvas

我有一种情况,我需要获取一些文本并在按下按钮时将其打印在Tkinter GUI画布内。

函数内部的代码如下:

def plot_best_batsmen():
    print("The best Batsman of the Tournament could possibly be: ",
          dataset.loc[dataset.loc[dataset['Innings']>=15,'Average'].idxmax(),'Names'])

该按钮的代码如下:

b5 = Button(root, text="Best Batsmen", command=plot_best_batsmen, bg="#34495E", fg="white").pack(side = LEFT)

我的预期结果是单击该按钮时,在Tkinter GUI上打印播放器的名称以及图像。但是,当我在Anaconda上运行代码时,它是在控制台上打印名称,而不是在GUI内打印。

有人可以帮助我解决这个问题吗?

1 个答案:

答案 0 :(得分:0)

在函数中使用canvas.create(x,y, text=' ' anchor='nw)Label()也可以使用。

我假设您已经在函数之前定义了Canvas

这里是一个示例。

from tkinter import *

root = Tk()

canvas = Canvas(root)
canvas.pack()

def plot_best_batsmen():
    text = "The best Batsman of the Tournament could possibly be: ", dataset.loc[dataset.loc[dataset['Innings']>=15,'Average'].idxmax(),'Names']
    canvas.create_text(1, 1, text=text, anchor='nw')

b5 = Button(root, text="Best Batsmen", command=plot_best_batsmen, bg="#34495E", fg="white")
b5.pack(side = LEFT)

mainloop()