我正在为tkinter&python中的文本编辑器制作自动完成功能。
目前自动完成的过程是:
如果有一个类似于自动完成词典的输入,请调用popup。在
我通过t_start.bind("< Key >", asprint)来完成,其中asprint是我的弹出函数。
我可以通过退出按钮或点击其他地方退出弹出窗口。
我想要的是-一旦用户按下任何文本键-重新触发弹出窗口,缩小搜索范围在自动完成。在F->FI->FIL->FILE
差不多吧。我不知道在弹出窗口打开后,用什么来获取输入。我如何得到第二个和每一个输入字符?在
弹出功能是:def popup(event):
selected_text=''
try:
selected_text=t_start.get("sel.first", "sel.last")
except TclError:
for i in range(len(selected_text)):
if selected_text[i:0]==word[i:0]:
menu.add_command(label="%s" %selected_text, command=insert_word)
menu.delete(0)
else:
pass
menu.tk_popup(event.x_root, event.y_root)