如何将滚动条添加到文本小部件?

时间:2013-01-16 13:31:16

标签: python user-interface tkinter

如果文本窗口小部件位于顶级窗口小部件中并通过网格几何管理器添加到布局,如何将滚动条添加到文本窗口小部件。

我的意思是我在“toplevel”窗口/对话框中得到了这个:

ttk.Label(toplevel,text="Text Area").grid(row=8,sticky=E)
self.TextAreaCCOrder=Text(toplevel,height=10,width=50 ).grid(row=8,column=1)

PS:我是菜鸟:)

1 个答案:

答案 0 :(得分:0)

这是一个使用滚动条和文本小部件创建框架的示例:

import Tkinter as tk

class Example(tk.Frame):
    def __init__(self, parent):
        tk.Frame.__init__(self, parent)

        # create the text and scrollbar widgets
        text = tk.Text(self, wrap="word")
        vsb = tk.Scrollbar(self, orient="vertical")

        # connect them to each other
        text.configure(yscrollcommand=vsb.set)
        vsb.configure(command=text.yview)

        # use grid to arrange the widgets (though pack is simpler if
        # you only have a single scrollbar)
        vsb.grid(row=0, column=1, sticky="ns")
        text.grid(row=0, column=0, sticky="nsew")

        # configure grid such that the cell containing the text
        # widget grows and shrinks with the window
        self.grid_rowconfigure(0, weight=1)
        self.grid_columnconfigure(0, weight=1)

if __name__ == "__main__":
    root = tk.Tk()
    frame = Example(parent=root)
    frame.pack(side="top", fill="both", expand=True)

    root.mainloop()