Tk (ツールキット)
最新版 | 8.6.9 / 2018年11月16日 |
---|---|
最新評価版 | 8.7a1 / 2017年9月8日 |
リポジトリ | |
対応OS | クロスプラットフォーム |
プラットフォーム | クロスプラットフォーム |
種別 | ウィジェット・ツールキット |
ライセンス | BSDライセンス |
公式サイト | http://www.tcl.tk |
Tkは、GUIを開発するための、オープンソースの、クロスプラットフォームのウィジェット・ツールキットである。デスクトップ・アプリケーションを開発するために通常必要な、ボタン、メニュー、テキスト、フレーム、ラベルなどのウィジェットを提供する。カリフォルニア大学バークレー校の John Ousterhout によって、スクリプト言語 Tclの拡張として開発された。Tk は "Tool Kit" の略である。Unix系OS、Macintosh、Microsoft Windowsなどに移植されている。
機能
[編集]もともとの Tk では、各プラットフォームの標準的なものとは異なるルック・ アンド・フィールであったが、Tk 8 からは、ネイティブなルック・アンド・フィールを提供するようになった(例えば、メニューとボタンはそのプラットフォームの「ネイティブな」ソフトウェアの作法で表示される)。さらに、外部とのドラッグ・アンド・ドロップ、非長方形のウィンドウ、ネイティブのウィジェットなどのいくつかの拡張が提供された。Tk 8.5 からは、Tk 8.4で試験的に提供されていた、Tk Tile と呼ばれる新しいテーマ・エンジンが、リリースに取り込まれた。これは、Ttk Widget と呼ばれるもので、テーマを変更し GUI の見栄えを切り替えることができる。 Tk は、Unicodeの基本多言語面 (BMP) をサポートするが、32-bitの Unicode を扱うための拡張はまだされていない。Unix系のシステムでは、Tk 8.4 以前は、ビットマップフォントを使用していたが、Tk 8.5 では、アンチエイリアスフォントを使用することができる。
Tcl では、Tcl Shell (tclsh) というコマンドライン・インタプリタを使用するが、Tk は wish (Windowing Shell) というコマンドライン・インタプリタから簡単に呼び出すことができる。
Tcl以外の言語バインディング
[編集]Ada(TASH[1] と呼ばれる)、Perl、Python、Ruby および Common Lisp を含むいくつかのほかの言語バインディングが存在する。
Perlから、Tk を動かす方法はいくつかある。Tcl::Tk と Tkx の Perl モジュール、これらは両方とも、Tcl を用いて Tk にアクセスするためのブリッジである。Perl/Tk は、Perl からのネイティブな Tk の機構へのアクセスを提供する。Python と Ruby は、Tk へのブリッジとして、Tcl を使うバインディングを使用する。