我该如何让我的GUI输出结果?
我正在学习 Tkinter
,我需要一个按钮,然后当我点击它时,执行一些代码,并打印出结果。
我开始是这样的:
from Tkinter import *
import heapq
root = Tk()
root.title("TEST")
root.geometry("800x600")
#-------------------CODE-----------------------
def makeHuffTree(symbolTupleList):
trees = list(symbolTupleList)
heapq.heapify(trees)
while len(trees) > 1:
childR, childL = heapq.heappop(trees), heapq.heappop(trees)
parent = (childL[0] + childR[0], childL, childR)
heapq.heappush(trees, parent)
return trees[0]
def printHuffTree(huffTree, prefix = ''):
if len(huffTree) == 2:
print huffTree[1], prefix
else:
printHuffTree(huffTree[1], prefix + '0')
printHuffTree(huffTree[2], prefix + '1')
def OnButton():
exampleData = [(0.124167 , 'e'), (0.0969225 , 't'),(0.0820011 , 'a'),]
huffTree = makeHuffTree(exampleData)
printHuffTree(huffTree)
button = Button(root, text="Press me!", command=OnButton)
button.pack()
root.mainloop()
那么我现在该如何让我的图形界面输出结果呢?
1 个回答
2
你想在代码中添加类似下面的内容:
def OnButton():
exampleData = [(0.124167 , 'e'), (0.0969225 , 't'),(0.0820011 , 'a'),]
huffTree = makeHuffTree(exampleData)
printHuffTree(huffTree)
button = Button(root, text="Press me!", command=OnButton)
button.pack()
如果你说的“在图形界面中显示结果”是指想让结果出现在一个窗口里,而不是在控制台上,那么你需要添加一个文本框,并把所有的print
语句替换成<textwidget>.insert
语句。