Python.use(better) #Tutor: step06 -- def create_view(self, master)

記事一覧 Python.use(better)《Python3.1》

def create_view(self, master)

《著》小粒ちゃん+∞《監修》小泉ひよ子とタマゴ倶楽部
第0版♪2001/03/02 ● 第1版♪2003/05/25 ● 第2版♪2004/06/01 ● 第3版♪2009/02/28

基礎編で利用した学習ツールを作成する過程を通して「プログラミング」の理解を深めます。
※ Tcl/Tk で作成した例題を、Python3.1 で再構成しました。

事例:モジュールを起動する

■ 全項目を確認する

全ステップの「項目」を確認するには、関数 do を利用します。

$ python -i tutorTk.py
>>> do()
...
6: step06 -- def create_view(self, master):
■ 各項目を実行する

各ステップの「動作」を確認するには、関数 do に実引数を指定します。

>>> do(6)
>>> # -------------------------------------------------- step06

リスト領域の右側には、スクロールバーが現れます。

  • リスト領域(左下部)では、任意の項目を選択できます。

任意の項目を選択(ダブルクリック)すると、

  • テキスト領域(上部)には、選択した項目が表示されます。
  • テキスト領域(右下部)には、任意の文字を入力できます。

事例:コードの解説

def step06():
    """def create_view(self, master):"""

    class Tutor(object):
        def __init__(self, master, target):
            self.help = self.create_help(master)
            frame = self.create_Frame(master)

            w = self.create_controller(frame, target)
            y = self.create_Scrollbar(frame, w, VERTICAL)
            w.grid(row=0, column=0, sticky=NSEW)
            y.grid(row=0, column=1, sticky=NS  )

            w = self.create_view(frame)
            x = self.create_Scrollbar(frame, w, HORIZONTAL)
            y = self.create_Scrollbar(frame, w, VERTICAL  )
            w.grid(row=0, column=2, sticky=NSEW)
            x.grid(row=1, column=2, sticky=EW  )
            y.grid(row=0, column=3, sticky=NS  )

        def create_view(self, master):
            widget = Text(master, bg="ivory", wrap=NONE)
            return widget
■ #1: メソッド __init__
        def __init__(self, master, target):
            ...
            w = self.create_view(frame)
            x = self.create_Scrollbar(frame, w, HORIZONTAL)
            y = self.create_Scrollbar(frame, w, VERTICAL  )
            w.grid(row=0, column=2, sticky=NSEW)
            x.grid(row=1, column=2, sticky=EW  )
            y.grid(row=0, column=3, sticky=NS  )

格子を使って、任意の widget を配置できます。

  • 横方向 EW にスクロールバー x を配置します。
  • 縦方向 NS にスクロールバー y を配置します。
■ #2: クラス Text
        def create_view(self, master):
            widget = Text(master, bg="ivory", wrap=NONE)
            return widget

生成した Text をリターン値にします。

》こちらに移動中です《
TOP


関連記事

Last updated♪2009/12/09