我正在尝试使用Text
小部件实现命令控制台。在下面的代码中,当我点击“返回”键时,光标在插入提示后移动到下一行。我无法在提示符下设置光标位置。我尝试捕捉x,y坐标,但它也没有帮助。
from Tkinter import *
def getCommand(*args):
global text
x_pos = text.xview()[0]
y_pos = text.yview()[0]
text.insert(END, "\n")
text.insert(END, "command>")
root = Tk()
text = Text(root)
text.pack()
text.insert(END,"command>")
text.focus()
text.bind("<Return>",getCommand)
root.mainloop()
答案 0 :(得分:1)
返回'break'
将阻止在回调返回后正常处理<Return>
。
请尝试以下代码。
def getCommand(*args):
global text
x_pos = text.xview()[0]
y_pos = text.yview()[0]
command = text.get('insert linestart', 'insert').replace('command>', '', 1)
print command
text.insert(END, "\n")
text.insert(END, "command>")
return 'break'