特定线上的Tkinter文本小部件光标

时间:2013-08-07 03:41:55

标签: python tkinter

我正在尝试使用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()

1 个答案:

答案 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'