#
16.6 他のグラフィカルユーザインタフェースパッケージ

`Tkinter`へ付け加えられるたくさんの拡張ウィジェットがあります。

Python メガウィジェット
  `Tkinter`モジュールを使い Python で高レベルの複合 ウィジェットを構築するためのツールキットです。基本クラスと この基礎の上に構築された柔軟で拡張可能なメガウィジェットか ら構成されています。これらのメガウィジェットはノートブック、 コンボボックス、選択ウィジェット、ペインウィジェット、スク ロールするウィジェット、ダイアログウィンドウなどを含みます。 BLTに対するPmw.Bltインタフェースを持ち、busy、graph、 stripchart、tabsetおよびvectorコマンドが利用できます。

  Pmwの最初のアイディアは、Michael McLennanによるTk `itcl`拡張 `[incr Tk]`とMark Ulfertsによる`[incr Widgets]`から得ました。 メガウィジェットのいくつかはitclから Python へ直接変換したものです。 `[incr Widgets]`が提供するウィジェットとほぼ同等のものを提供しま す。そして、Tixと同様にほぼ完成しています。しかしながら、ツリーを描く ためのTixの高速な`HList`ウィジェットが欠けています。

Tkinter3000 Widget Construction Kit (WCK)
  は、新しい Tkinter ウィジェットを、 Python で書けるようにするライブラリで す。WCK フレームワークは、ウィジェットの生成、設定、スクリーンの外観、イ ベント操作における、完全な制御を提供します。Tk/Tcl レイヤーを通してデー タ転送する必要がなく、直接 Python のデータ構造を操作することができるので、 WCK ウィジェットは非常に高速で軽量になり得ます。

Tk は Python にとって唯一の GUI というわけではありませんが、 もっともよく使われています。

wxWindows
  Qt、Tk、MotifおよびGTK+ のもっとも魅力のある性質を一つのパッケージに結合したGUIツールキット です。C++で実装されています。wxWindowsは二種類のUnix実装をサポー トしています: GTK+とMotif。Windowsでは、標準的なMicrosoft Foundation Classes (MFC)の外観を持っています。なぜなら、Win32ウィジェットを使っ ているからです。Tkinterに依存しない Python クラスブラウザがあります。

  wxWindowsは`Tkinter`よりさらにウィジェットが豊富で、そのへヘ ルプシステム、洗練されたHTMLと画像ビューアおよび他の専門分野別のウィ ジェット、多数のドキュメントと印刷機能を持っています。

PyQt
  PyQtはsipでラップされたQtツールキットへの バインディングです。QtはUnix、WindowsおよびMac OS Xで利用できる大 規模なC++ GUIツールキットです。sipは Python クラスとし てC++ライブラリに対するバインディングを生成するためのツールキット で、特に Python 用に設計されています。オンライン・マニュアルは http://www.opendocspublishing.com/pyqt/ (正誤表は http://www.valdyas.org/python/book.htmlにあります)で手に入りま す。

PyKDE
  PyKDEはsipでラップされたKDEデスクトップライブラリに対するイ ンタフェースです。KDEはUnixコンピュータ用のデスクトップ環境です。グ ラフィカル・コンポーネントはQtに基づいています。

FXPy
  FOX GUIへのインタフェースを提供する Python 拡張モジュールです。FOXは、グ ラフィカルユーザインタフェースを簡単かつ効率良く開発するためのC++ ベースのツールキットです。それは幅広く、成長しているコントロール・コ レクションで、3Dグラフィックスの操作のためのOpenGLウィジェットと同様 に、ドラッグアンドドロップ、選択のような最新の機能を提供します。FOX はアイコン、画像およびステータスライン・ヘルプやツールチップのような ユーザにとって便利な機能も実装しています。

  FOXはすでに大規模なコントロール・コレクションを提供していますが、単に 既存のコントロールを使って望みの振る舞いを追加または再定義する派生クラ スを作成することによってプログラマが簡単に追加コントロールとGUI要素を 構築できるようにするために、FOXはC++を利用しています。

PyGTK
  GTKウィ ジェットセットのための一連のバインディングです。Cのものより少しだけ 高レベルなオブジェクト指向インタフェースを提供します。普通はC APIを 使ってやらなければならない型キャストとリファレンス・カウントをすべて 自動的に行います。GNOMEに対しても、 バインディングがあります。チュートリアルが手に入ります。