Tk によるグラフィカルユーザーインターフェース
*********************************************

Tk/Tcl は長きにわたり Python の不可欠な一部でありつづけています。
Tk/Tcl は頑健でプラットホームに依存しないウィンドウ構築ツールキットで
あり、 Python プログラマは "tkinter" パッケージやその拡張の
"tkinter.ttk" モジュールを使って利用できます。

"tkinter" パッケージは、Tcl/Tk 上に設けられた薄いオブジェクト指向の層
です。 "tkinter" を使うために Tcl のコードを書く必要はありませんが、Tk
のドキュメントや、ときには Tcl のドキュメントを参照する必要があります
。 "tkinter" は、Tk ウィジェットを Python クラスとして実装するラッパー
の集合です。

"tkinter" の一番素晴らしい点は、速く、そしてほとんどの Python に付属し
ていることです。標準ドキュメントが頼りないものだとしても、代わりとなる
、リファレンス、チュートリアル、書籍その他が入手可能です。"tkinter" は
古臭いルックアンドフィールでも有名ですが、その点は Tk 8.5 で大きく改善
されました。とはいえ、他にも興味を引きそうな GUI ライブラリは多数あり
ます。 Python wiki には、いくつかの代替の GUI フレームワークとツール
の一覧があります。

* "tkinter" --- Tcl/Tk の Python インターフェース

  * アーキテクチャ

  * Tkinter のモジュール

  * Tkinter の手引き

    * Hello World プログラム

    * Tk の重要な概念

    * Tkinter による Tcl/Tk のラップの仕組み

    * どうすればいい？ どのオプションを使う？

    * Tcl/Tk リファレンスマニュアルの調べ方

  * スレッドモデル

  * 便利なリファレンス

    * オプションの設定

    * ジオメトリ管理

    * ウィジェットと変数の連携

    * ウィンドウマネージャー

    * Tk オプションのデータ型

    * バインディングとイベント

    * index 引数

    * 画像

  * リファレンス

    * 基底クラスとミックスインクラス

    * トップレベルウィジェット

    * ウィジェットクラス

    * 変数クラス

    * 画像クラス

    * その他のクラス

    * モジュールレベルの関数

    * ファイルハンドラ

    * 定数

* "tkinter.colorchooser" --- カラー選択ダイアログ

* "tkinter.font" --- Tkinter フォントラッパー

* Tkinter のダイアログ

  * "tkinter.simpledialog" --- Tkinter の標準入力ダイアログ

  * "tkinter.filedialog" --- ファイル選択ダイアログ

    * ネイティブの読み込み・保存ダイアログ

  * "tkinter.commondialog" --- ダイアログウィンドウのテンプレート

  * "tkinter.dialog" --- 従来の Tk ダイアログボックス

* "tkinter.messagebox" --- Tkinter メッセージプロンプト

* "tkinter.scrolledtext" --- スクロール付きテキストウィジェット

* "tkinter.dnd" --- ドラッグアンドドロップのサポート

* "tkinter.ttk" --- Tk のテーマ付きウィジェット

  * Ttk を使う

  * Ttk ウィジェット

  * ウィジェット

    * 標準オプション

    * スクロール可能なウィジェットのオプション

    * ラベルのオプション

    * 互換性のためのオプション

    * ウィジェットの状態

    * ttk.Widget

  * コンボボックス

    * オプション

    * 仮想イベント

    * ttk.Combobox

  * スピンボックス

    * オプション

    * 仮想イベント

    * ttk.Spinbox

  * ノートブック

    * オプション

    * タブのオプション

    * タブの識別子

    * 仮想イベント

    * ttk.Notebook

  * プログレスバー

    * オプション

    * ttk.Progressbar

  * セパレータ

    * オプション

  * サイズグリップ

    * プラットフォーム固有のメモ

    * バグ

  * ツリービュー

    * オプション

    * 要素のオプション

    * タグのオプション

    * カラム識別子

    * 仮想イベント

    * ttk.Treeview

  * Ttk のスタイル設定

    * レイアウト

  * その他のウィジェット

* IDLE --- Python のエディタとシェル

  * メニュー

    * File メニュー (Shell ウィンドウ、Editor ウィンドウ)

    * Edit メニュー (Shell ウィンドウ、Editor ウィンドウ)

    * Format メニュー (Editor ウィンドウのみ)

    * Run メニュー (Editor ウィンドウのみ)

    * Shell メニュー (Shell ウィンドウのみ)

    * Debug メニュー (Shell ウィンドウのみ)

    * Options メニュー (Shell ウィンドウ、Editor ウィンドウ)

    * Window メニュー (Shell ウィンドウ、Editor ウィンドウ)

    * Help メニュー (Shell ウィンドウ、Editor ウィンドウ)

    * コンテキストメニュー

  * 編集とナビゲーション

    * Editor ウィンドウ

    * キーバインディング

    * 自動的な字下げ

    * 検索と置換

    * 補完 (Completions)

    * 呼び出しヒント (Calltips)

    * ブロックの整形

    * コードコンテキスト

    * Shell ウィンドウ

    * テキストの色

  * 起動とコードの実行

    * コマンドラインでの使用

    * 起動の失敗

    * ユーザーコードの実行

    * Shell でのユーザー出力

    * tkinter アプリケーションの開発

    * サブプロセスを起こさずに起動する

  * ヘルプと設定

    * ヘルプソース

    * Setting preferences [お好み設定]

    * macOS での IDLE

    * Extensions [拡張]

  * idlelib --- IDLE アプリケーションの実装

* "turtle" --- タートルグラフィックス

  * チュートリアル

    * タートルの環境を起動する

    * 基本的な描画

      * Pen の制御

      * タートルの位置

    * アルゴリズムで模様を描く

  * リファレンス

    * タートルのメソッドと関数

      * 移動および描画

      * Turtle の状態を知る

      * 測定の設定

      * Pen の制御

        * 描画状態

        * 色の制御

        * 塗りつぶし

        * さらなる描画の制御

      * タートルの状態

        * 可視性

        * 見た目

      * イベントを利用する

      * 特別な Turtle のメソッド

    * Screen のメソッドと関数

      * ウィンドウの制御

      * アニメーションの制御

      * スクリーンイベントを利用する

      * 入力メソッド

      * 設定と特殊なメソッド

      * Screen 専用のメソッド

    * 公開クラス

    * 例外

  * ハウツー・ガイド

    * 塗りつぶしを自動的に開始・終了する方法

    * 複合形状を使う方法

    * "turtle" モジュールの名前空間を使う方法

    * スクリプトでタートルグラフィックスを使う方法

    * オブジェクト指向のタートルグラフィックスを使う方法

    * "help()" の使い方

    * ドキュメント文字列の翻訳

    * Screen および Turtle の設定方法

  * 説明

  * "turtledemo" --- デモスクリプト
