Tkinter《51》Text 部品と Scrollbar #1

記事一覧 Python.use(better, Tkinter)《Python3.1》
《こちらに移動しました》2007年4月16日 (月)

Text 部品と Scrollbar #1

《著》森こねこ・小粒ちゃん+∞《監修》小泉ひよ子とタマゴ倶楽部
第0版♪1993/11/25 ● 第1版♪2006/10/28

Tkinter によるオブジェクト指向プログラミングへの扉を開きます。
※ Tcl/Tk で作成した例題を、Tkinter で再構成しました。

Text 部品と Scrollbar

部品 Text の基本的な機能を紹介します。Text と Scrollbar とを組み合わせて利用すると便利です。
次のコードを実行すると、ウィンドウが現われます。


  • 文字列がテキスト領域内に収まらなくなると(右/下に)スクロールバーが現われます。
    root = Tk(); root.title("Text with: Scrollbar")
    root.config(width=150, height=80)
    root.propagate(False)

    frame = Frame(root)
    frame.rowconfigure(0, weight=1)
    frame.columnconfigure(0, weight=1)
    frame.pack(fill=BOTH, expand=True)

    text = Text(frame, 
        width=20, height=5, font="courier 12", wrap=NONE)
    text.grid(row=0, column=0, sticky=NSEW)

    xScrollbar = Scrollbar(frame, orient=HORIZONTAL)
    xScrollbar.config(command=text.xview)
    xScrollbar.grid(row=1, column=0, sticky=EW)

    yScrollbar = Scrollbar(frame, orient=VERTICAL)
    yScrollbar.config(command=text.yview)
    yScrollbar.grid(row=0, column=1, sticky=NS)

    text.config(
        xscrollcommand=xScrollbar.set, 
        yscrollcommand=yScrollbar.set)

    root.mainloop()
■ 部品の操作 → スクロールバーの再表示

部品を操作するのに合わせて、スクロールバーを再表示させるには、

  • テキスト部品 Text をスクロールバー Scrollbar に関係付けます。

xscrollcommand= には、Scrollbar の再表示を促すメソッド set を設定します。

  • テキスト部品を操作してイベントが発生すると、
    • コールバック xscrollcommand を介して set が起動されます。
■ スクロールバーの操作 → 部品の再表示

スクロールバーを操作するのに合わせて、部品を再表示させるには、

  • スクロールバー Scrollbar をテキスト部品 Text に関係付けます。

command= には、Text の再表示を促すメソッド xview を設定します。

  • スクロールバーを操作してイベントが発生すると、
    • コールバック command を介して xview が起動されます。


関連記事

Last updated♪2009/12/09