我正在尝试用 Python 创建一个拼字游戏。我想在用户输入单词时显示该单词的价值。我已经问过这个问题,因为我不知道使用什么方法。当我发现使用哪种方法时,我的问题是关于如何使用这种方法,我认为这值得提出一个新问题。我的问题是我创建了一个名为的函数,该函数bind_entry(event)
应该在用户每次输入字母时设置一个标签。但是该函数bind_entry(event)
不知道要设置的标签和单词所在的条目。
这是我的代码:
#this the function creating the label
def create_variabletext_intlabel(root,col,row):
val=IntVar()
label=Label(root,textvariable=val)
label.grid(column=col,row=row)
return val, label
#this is the function creating the entry
def create_entry_string(root,width,col,row,columnspan,rowspan):
val=StringVar()
entry=ttk.Entry(root,width=width,textvariable=val)
entry.grid(column=col,row=row,columnspan=columnspan,rowspan=rowspan)
entry.bind("<Any-KeyPress>",bind_entry)
#Here is my problem, when I call the function bind_entry.
return val, entry
def bind_entry(event):
label.set(m.counting_point(char(event)))
# m.counting_point() is a function counting the word's points
# my problem is that the function doesn't know yet the label.
# I don't know how to call the label.
# I call the function create_entry_string in another file initiating
# all the widget for the GUI
val_entry_word, entry_word =g.create_entry_string(root,15,1,1,1,1)
# I call the function create_variabletext_intlabel in another file
# initiating all the widget for the GUI
val_points,label_points=g.create_variabletext_intlabel(root,1,2)
我刚刚注意到该函数m.counting_points()
将仅计算用户键入的字母。在这里我应该打电话val_entry_word
。
所以这是我的问题:
As val_entry_word
and val_points
are created in an function in another file 我怎么能在函数中调用val_entry_word
和?val_points
bind_entry()