网格布局中文本小部件上的Python滚动条

时间:2014-06-05 22:31:01

标签: python text scrollbar

所以我有一个文本小部件,其中填充了多行。我有以下代码创建文本小部件,滚动条并将它们分配给彼此。但是,现在文本框已经消失,滚动条实际上​​很小。怎么了?

txt_domains = Text(root,height=10,width=20)
txt_domains.grid(row=1,column=1)
scr_domains = Scrollbar(txt_domains,orient='vertical')
scr_domains.grid(row=1,column=2)
txt_domains.config(yscrollcommand=scr_domains.set)
scr_domains.config(command=txt_domains.yview)

更新 使用以下修改:

txt_domains = Text(root,height=10,width=20)
txt_domains.grid(row=1,column=1)
scr_domains = Scrollbar(root,orient='vertical')
scr_domains.grid(row=1,column=2,sticky='sn')
txt_domains.config(yscrollcommand=scr_domains.set)
scr_domains.config(command=txt_domains.yview)

我知道得到这个结果: Python Scroll Bar

出于某种原因,一切都转移了? 解决方案:将txt_domains更改为column = 0并将滚动条更改为column = 1.

1 个答案:

答案 0 :(得分:1)

我认为问题是滚动条的父级是txt_domains而不是框架或根窗口(取决于您的代码)。这应该很有效:

from tkinter import *


root = Tk()


txt_domains = Text(root,height=10,width=20)
txt_domains.grid(row=1,column=1)
scr_domains = Scrollbar(root,orient='vertical')
scr_domains.grid(row=1,column=2, sticky=S+N)
txt_domains.config(yscrollcommand=scr_domains.set)
scr_domains.config(command=txt_domains.yview)


root.mainloop()