控制Tkinter中滚动条的位置

时间:2014-03-11 09:29:38

标签: python python-2.7 tkinter

我正在尝试学习Tkinter。以下程序工作正常。它会创建一个文本框和一个连接到文本框的滚动条。还有一个按钮,按下时会在文本框中插入一行。现在我想要做的是移动滚动条,使得当文本超出第一个屏幕时,滚动条会自动向下滚动,以便用户只能看到输入的最后一行。我想要做的是文本框的行为类似于扩展统计窗口,以便用户能够看到目前为止的进度。现在,用户将不断向下滚动,使用滚动条到最后一行。我希望这个过程是自动的。有没有我可以用来做的命令?

谢谢!

from Tkinter import *

root = Tk()

def checkFn():
    text.insert(END, ' --> The check button has been pressed ... \n')

# ............... Frame 1 .................................
frame1 = Frame(root)
frame1.pack(side=TOP, fill=X)

b = Button(frame1, text='Check', command=checkFn)
b.pack(side=LEFT, padx=5)


# .............. Text Frame .................................
frame10 = Frame(root)
frame10.pack(side=TOP, fill=X)


scrlBar = Scrollbar(frame10)
scrlBar.pack(side=RIGHT, fill=Y)

text = Text(frame10, yscrollcommand=scrlBar.set)
text.insert(INSERT, 'abcd\n')
text.pack(side=LEFT, fill=BOTH)
scrlBar.config(command=text.yview)

root.mainloop()

1 个答案:

答案 0 :(得分:2)

我要说的最简单的方法是see(index)

checkFn()方法中,使用text.see(END)