Python Tkinter / GUI无法正确更新/工作

时间:2015-10-18 18:23:19

标签: python user-interface tkinter python-3.3

我想知道是否有人可以快速解决我的问题。 我试图制作一个程序(作为一个gcse模拟)来获取句子中单词的位置。

我的文章中的句子很有效但是我想要超越以获得尽可能高的分数,所以我用gui再次创建它!

到目前为止,我有以下代码并且它无法正常工作,它没有更新'句子'变量和我正在寻找一种简单的方法来解决这个问题而不是更新。我得到一些随机数,我不知道它来自哪里。任何帮助都感激不尽。 :)

    #MY CODE:
    #GCSE MOCK TASK WITH GUI
import tkinter
from tkinter import *

sentence = ("Default")

window = tkinter.Tk()
window.resizable(width=FALSE, height=FALSE)
window.title("Sentence")
window.geometry("400x300")
#Add custom logo here later on


def findword():
    print ("")


sentencetext = tkinter.Label(window, text="Enter Sentence: ")
sentence = tkinter.Entry(window)
sentencebutton = tkinter.Button(text="Submit")

findword = tkinter.Label(window, text="Enter Word To Find: ")
wordtofind = tkinter.Entry(window)
findwordbutton = tkinter.Button(text="Find!", command = findword)


usersentence = sentence.get()
usersentence = tkinter.Label(window,text=sentence)



shape = Canvas (bg="grey", cursor="arrow", width="400", height="8")
shape2 = Canvas (bg="grey", cursor="arrow", width="400", height="8")


#Packing & Ordering Modules
sentencetext.pack()
sentence.pack()
sentencebutton.pack()

shape.pack()


findword.pack()
wordtofind.pack()
findwordbutton.pack()
usersentence.pack()

shape2.pack()

window.mainloop()

1 个答案:

答案 0 :(得分:0)

目前您的句子的“提交”按钮实际上没有命令限制,并且两个“句子”引用可能会发生冲突:
sentencebutton = tkinter.Button(text="Submit")

sentence = ("Default")
sentence = tkinter.Entry(window)

我可以看到你试图做的是设置它以便变量句从“默认”变为任何进入“进入”窗口的 - 这不起作用,你所做的就是设置它该句子成为条目小部件本身,而不是输入的内容。

我建议创建一个名为'update_sentence'的函数,并重命名你的初始'sentence'变量,以区别于标签:
var_sentence = "default"

def update_sentence: var_sentence = sentence.get()

然后更改按钮,使其具有命令,如下所示:
sentencebutton = tkinter.Button(text="Submit", command = update_sentence)

希望这有帮助!