クラス階層は複雑に見えますが、実際の実務ではアプリケーションプログラマはほとんど常に階層のもっとも底辺にあるクラスを参照します。
注釈:
このリファレンス資料を使うために、Tkの短い進行を読む方法とTkコマンドのいろいろな部分を識別する方法を知る必要があるということはままあるでしょう。 (下に説明してあるものとTkinterにおける同等なものについては、節 16.1.4を参照してください。)
TkスクリプトはTclプログラムです。すべてのTclプログラムのように、Tkスクリプトは空白で区切られたトークンを並べたものです。Tkウィジェットはウィジェットのクラス、その設定を行うオプションと、それに役立つことをさせるアクションです。
Tkにおけるウィジェットを作るには、コマンドは常に次のような形式です:
classCommand newPathname options
.
(ピリオド)と呼ばれていて、子はさらにピリオドで区切られています。例として、.myApp.controlPanel.okButton
はウィジェットの名前です。
例として:
button .fred -fg red -text "hi there" ^ ^ \_____________________/ | | | class new options command widget (-opt val -opt val ...)
一旦作られたら、ウィジェットへのパス名は新しいコマンドとなります。この新しいwidget commandは、actionを実行する新しいウィジェットを得るためのプログラマのハンドルです。CではこれをsomeAction(fred, someOptions)と表し、C++ではfred.someAction(someOptions)と表すでしょう。そして、Tkでは:
.fred someAction someOptions
とします。オブジェクト名.fred
がドットから始まっていることに注意してください。
あなたが期待するように、someActionに対する正当な値はウィジェットのクラスに依存します: fredがボタンなら.fred disable
は機能しますが(fredはグレーになります)、fredがラベルなら機能しません(Tkではラベルの無効化をサポートしていません)。
someOptionsの正当な値はアクション依存です。disable
のようないくつかのアクションは引数を必要としませんが、テキストエントリボックスのdelete
コマンドのような他のものは、削除するテキストの範囲を指定するための引数を必要とします。
ご意見やご指摘をお寄せになりたい方は、 このドキュメントについて... をご覧ください。