MISC クラスメソッド

← 目次     No.0002 →

999999

 更新日:

Misc クラスメソッド

 Miscクラスには以下のメソッドが定義されています。

Base class which defines methods common for interior widgets. Methods defined here: __contains__(self, key) __getitem__ = cget(self, key) __setitem__(self, key, value) __str__(self) Return the window path name of this widget.
object.after(ms, func=None, *args)

 指定した時間の経過後に指定した関数を呼び出して実行します。


引数
ms

 関数を呼び出す時間を指定します。単位はミリ秒です。

func

 呼び出す関数オブジェクトを指定します。

*args

 呼び出す関数に渡す引数の値を指定します。引数が複数ある場合、「,」(カンマ)で区切って指定します。


返り値

 識別子。「after_cancel」メソッドでこのメソッドの実行をキャンセルするために用います。


備考

 関数を指定しないか「None」を指定すると、このメソッドは指定した時間スリープ(待機)します。スリープの間はこのメソッドは終了しません。

 関数が指定されている場合、このメソッドは指定した時間の経過後に関数を 1 回だけ呼び出して実行するようにシステムに登録します。登録後、このメソッドは関数の実行に関係なく終了します。

object.after_cancel(id)

 「after」または「after_idle」メソッドによる関数の実行の登録をキャンセルします。


引数
id

 キャンセル「after」または「after_idle」メソッドの識別子を指定します。識別子は「after」または「after_idle」メソッドの実行時に返されます。


備考

 「after」または「after_idle」メソッドで指定した関数が既に実行されている場合、このメソッドの効果はありません。

object.after_idle(func, *args)

 「mainloop」メソッドで処理するイベントがないとき、関数を 1 回だけ呼び出して実行します。


引数
func

 呼び出す関数のオブジェクトを指定します。

*args

 呼び出す関数に渡す引数の値を指定します。引数が複数ある場合、「,」(カンマ)で区切って指定します。


返り値

 識別子。「after_cancel」メソッドでこのメソッドの実行をキャンセルするために用います。

object.bbox(column=None, row=None, col2=None, row2=None
「grid_bbox」メソッドと同じです。
object.bind(sequence=None, func=None, add=None)

オブジェクトに対するイベントを処理する関数を設定します。


引数
sequence

関数を呼び出すイベントを連結された文字列のパターンで指定します。これらの指定方法は bind シーケンスを参照して下さい。

func

呼び出す関数オブジェクトを指定します。

add

指定した関数を同一のイベントに対して追加で呼び出すかをブーリアンで指定します。
デフォルトでは、前に同一のイベントに対して指定された関数は無効になります。「True」を指定すると、前の関数とこのメソッドで指定した関数は同一イベントに対して実行されます。


返り値

識別子。「unbind」メソッドでこのメソッドの実行をキャンセルするために用います。Windows では、この識別子を用いた「unbind」メソッドは動作しません。

引数に何も指定しない場合、オブジェクトに設定されている全ての sequence の値をタプルで返します。


備考

オブジェクトがトップレベル ウィンドウ(メインウィンドウまたはサブウィンドウ)の場合、すべての内部のオブジェクトに適用されます。

このメソッドで呼び出される関数はイベントの詳細情報を格納したオブジェクトを受け取るための引数を一つ持つ必要があります。

同一のイベントに対して複数の関数を設定したとき、呼び出される関数はこのメソッドを実行した順になります。呼び出された関数が「return」文で文字列「break」を返すと、他の関数は呼び出されなくなります。

Tcl/Tk における「バインドスクリプト」の「%」置換でイベント情報を伝える方法は定義されていません。代わりに「event」オブジェクトにおける属性として定義されています。イベントを参照して下さい。

「%」置換を利用するには「register」メソッドで呼び出す関数を「Tcl」関数にして、その関数に「%」置換を含むスクリプト文字列を空白の後に付加して引数「func」に設定します。呼び出す関数の引数に「%」置換されたスクリプト文字列が代入されます。「%」置換は Tcl/Tk の機能なので本書では説明していません。

object.bind_all(sequence=None, func=None, add=None)

アプリケーションにおける全てのオブジェクトに対するイベントを処理する関数を設定します。


引数
sequence

関数を呼び出すイベントを連結された文字列のパターンで指定します。これらの指定方法は bind シーケンスを参照して下さい。

func

呼び出す関数オブジェクトを指定します。

add

指定した関数を同一のイベントに対して追加で呼び出すかをブーリアンで指定します。
デフォルトでは、前に同一のイベントに対して指定された関数は無効になります。「True」を指定すると、前の関数とこのメソッドで指定した関数は同一イベントに対して実行されます。


返り値

引数に何も指定しない場合、bind_all として設定されている全ての sequence の値をタプルで返します。


備考

呼び出すオブジェクト「object」によらず、アプリケーションのすべてのオブジェクトに適用されます。

このメソッドで呼び出される関数はイベントの詳細情報を格納したオブジェクトを受け取るための引数を一つ持つ必要があります。

同一のイベントに対して複数の関数を設定したとき、呼び出される関数はこのメソッドを実行した順になります。呼び出された関数が「return」文で文字列「break」を返すと、他の関数は呼び出されなくなります。

object.bind_class(className, sequence=None, func=None, add=None)

指定したクラス名のオブジェクトに対するイベントを処理する関数を設定します。同じクラス名の全てのオブジェクトに適用されます。


引数
className

イベントの処理をするオブジェクトのクラス名を指定します。

sequence

関数を呼び出すイベントを連結された文字列のパターンで指定します。これらの指定方法は bind シーケンスを参照して下さい。

func

呼び出す関数オブジェクトを指定します。

add

指定した関数を同一のイベントに対して追加で呼び出すかをブーリアンで指定します。
デフォルトでは、前に同一のイベントに対して指定された関数は無効になります。「True」を指定すると、前の関数とこのメソッドで指定した関数は同一イベントに対して実行されます。


返り値

識別子。「unbind」メソッドでこのメソッドの実行をキャンセルするために用います。Windows では、この識別子を用いた「unbind」メソッドは動作しません。

引数に className の他に何も指定しない場合、className で指定したクラス名のオブジェクトに設定されている全ての sequence の値をタプルで返します。


備考

アプリケーションで用いられれている全ての同じクラス名のオブジェクトに適用されます。

オブジェクトを作成したクラス名は「winfo_class」メソッドで取得できます。また、同じクラスのオブジェクトを区別するために「class」オプションでクラス名を個別に設定して、そのクラス名で指定することができます。

このメソッドで呼び出される関数はイベントの詳細情報を格納したオブジェクトを受け取るための引数を一つ持つ必要があります。

同一のイベントに対して複数の関数を設定したとき、呼び出される関数はこのメソッドを実行した順になります。呼び出された関数が「return」文で文字列「break」を返すと、他の関数は呼び出されなくなります。

Tcl/Tk における「バインドスクリプト」の「%」置換でイベント情報を伝える方法は定義されていません。代わりに「event」オブジェクトにおける属性として定義されています。イベントを参照して下さい。

「%」置換を利用するには「register」メソッドで呼び出す関数を「Tcl」関数にして、その関数に「%」置換を含むスクリプト文字列を空白の後に付加して引数「func」に設定します。呼び出す関数の引数に「%」置換されたスクリプト文字列が代入されます。「%」置換は Tcl/Tk の機能なので本書では説明していません。

object.bindtags(tagList=None)

オブジェクトに適用されるバインディングの順序を設定、取得します。


引数
tagList

バインディングの順序をリストまたはタプルで指定します。指定するリストの要素は、オブジェクトを示す「.ウィンドウ(オブジェクト)名」(ウィンドウパス名)、オブジェクトのクラスを示す「クラス名」、オブジェクトが属すメインウィンドウを示す「.」、全てのオブジェクトを示す「all」の 4 つです。ここで、オブジェクトがメインウィンドウの場合、ウィンドウパス名とメインウィンドウの「.」は同じなので、一つは省略され要素は 3 つになります。

リスト要素に指定されていないバインディングは実行されません。

リスト要素に無効の文字列を設定した場合、その要素は無視されます。

空のリストを指定すると、バインディングの順序はデフォルトに設定されます。


返り値

引数に何も指定しないか「None」を指定すると、オブジェクトに適用されるバインディングの順序をタプルで返します。


備考

オブジェクトがイベントに対して処理する順番はバインドタグによってシステムで管理されています。デフォルトで 「ウィンドウパス名, クラス名, .(ピリオド), all」の順で設定されています。これは、イベントの処理において、最初に「ウィンドウパス名」で指定されたオブジェクトのイベント処理を行い、次いで「クラス名」で指定されたオブジェクト、ルートウィンドウ、最後に全てのオブジェクトと処理します。それぞれにおいて処理すべきイベントが無い場合は次に進みます。

「ウィンドウパス名」のイベントはオブジェクトに「bind」メソッドで設定したイベントを処理します。「クラス名」のイベントはオブジェクトのクラスが持っているイベント処理と「bind_class」メソッドで設定したイベントを処理します。「.(ピリオド)」はルートウィンドウのクラスが持っているイベント処理とルートウィンドウに「bind」メソッドで設定したイベントを処理します。「all」はシステムが全てのオブジェクトに設定しているイベント処理と「bind_all」メソッドで設定したイベントを処理します。

例えば、

 frame_1=tk.Frame(root, bg='red', takefocus=True,
     highlightcolor='yellow', highlightthickness=5)
 frame_2=tk.Frame(root, bg='green', takefocus=True,
     highlightcolor='yellow', highlightthickness=5)
 def callbind(event):
   print('Tab')
   return 'break'
 frame_1.bind('<Key-Tab>',callbind)

はフレームウィジェット(frame_1)に「<Key-Tab>」イベントを関数「calllbind」に関連付けてバインドしています。関数「calllbind」では「break」を返して以降のイベント処理を無効にしています。

上記の例の場合、バインドタグはデフォルで「.!frame, Frame, ., all」の順に処理されます(「frame_1」のウィンドウパス名は「.!frame」)。「Tab」キーを押下すると、フォーカスが移動してフォーカスのあるフレームのハイライト枠が黄色で表示されます。「fram_1」でのオブジェクトでのイベント処理が最初に実行され、関数「callbind」が呼ばれます。この関数では「break」を返しているので、これ以降、イベント処理は実行されず、「fram_1」からフォーカスは移動しません。

上記のコードで「bindtags」メソッドで「all」を先に設定した下記のコードを追加してイベント処理の順を変更します。

 frame_1.bindtags(['all', '.!frame', 'Frame', '.'])

このコードでは、全てのオブジェクトに設定されているイベントが先に実行されます。「Tab」キーによるフォーカスの移動はシステムによって全てのオブジェクトに設定されているので、「Tab」キーによりフォーカスが移動します。「frame_1」では次いで、関数「callbind」が呼ばれますが、「fram_1」からフォーカスは移動した後なので、フォーカス移動は妨げられません。

object.cget(key)

 キーワードで指定したオブジェクトのオプション値を取得します。


引数
Key

 取得するオプションのキーワードを指定します。


返り値

 指定したオプションに設定されている値を返します。

object.clipboard_append(string)

システムのクリップボードに文字列を追記して格納します。


引数
string

格納する文字列。


備考

クリップボードに既に文字列が格納されている場合、その文字列に続けて格納されます。

このメソッドがアプリケーションで最初に呼び出される場合、クリップボードに格納されている文字列はクリアされます。

アプリケーションが終了すると、このメソッドで格納された文字列はクリップボードから削除されます。

object.clipboard_clear()

システムのクリップボードの内容をクリアします。


備考

「selection_clear」メソッドで「selection」オプションに文字「CLIPBOARD」を指定したのと同じです。

object.clipboard_get()

システムのクリップボードから文字列を取得します。


備考

「selection_get」メソッドで「selection」オプションに文字「CLIPBOARD」を指定したのと同じです。

クリップボードに文字列が格納されていない場合、エラーになります。

object.columnconfigure(index, cnf={}, **kw)
「grid_columnconfigure」メソッドと同じです。
object.config(cnf=None, **kw)

「configure」メソッドと同じです。

object.configure(cnf=None, **kw)

 オブジェクトのオプションを設定、取得します


引数
cnf

 設定、取得するオプションをキーワードで指定します。オプションに値を設定するときは、設定するキーワードの文字列と値を辞書型で指定します。オプションの値を取得するときは、取得するオプションのキーワードを文字列で指定します。

 指定なしまたは「None」を指定すると、全てのキーワードに対するパラメータの設定値を辞書型で返します。

**kw

 設定するパラメータの値をキーワードで指定します。


返り値

 指定したオプションに設定されている値を文字列のタプル形式で返します。タプルの5番目の要素(インデックス「4」)がオプションの設定値になります。

 指定なしまたは「None」を指定すると、全てのキーワードに対するオプションの設定値を辞書型で返します。


備考

 「cnf」と「**kw」引数の両方を用いてオプションを設定することができます。それぞれの引数で同じオプションに別の値を設定すると「**kw」引数での設定値が有効になります。

 オプションの値を取得するときは、「**kw」引数でオプションを設定してはいけません。


deletecommand(self, name)
Internal function.
Delete the Tcl command provided in NAME.

destroy(self)
Internal function.
Delete all Tcl commands created for this widget in the Tcl interpreter.

object.event_add(virtual, *sequences)

システム定義のイベントに関連づけた任意の名前の新しいイベントを作成します。この名前のイベントは仮想イベントと呼ばれます。


引数
virtual

仮想イベントの名前を設定します。名前は「<< >>」で囲んだ文字列です。

*sequences

仮想イベントに関連付けるイベントの文字列を指定します。これらの指定方法は bind シーケンスを参照して下さい。
複数のイベントを関連付けるには「,」(カンマ)で区切って指定します。


備考

作成された仮想イベントは、作成したオブジェクトだけでなく全てのオブジェクトで利用することができます。

object.event_delete(virtual, *sequences)

「event_add」メソッドで作成した仮想イベントから設定したイベントを削除します。


引数
virtual

イベントを削除する仮想イベントの名前を設定します。名前は「<< >>」で囲んだ文字列です。

*sequences

削除するイベントの文字列を指定します。
複数のイベントを削除するには「,」(カンマ)で区切って指定します。


備考

作成された仮想イベントに設定されていないイベントを引数「*sequences」に指定してもエラーにはなりません。

object.event_generate(sequence, **kw)

アプリケーションからイベントまたは仮想イベントを発生します。


引数
sequence

発生させるイベントの名前を指定します。イベントの名前はシステムイベントの場合は「< >」で囲んだ文字列、仮想イベントの場合は「<< >>」で囲んだ文字列です。仮想イベントの名前は任意に定義できます。

**kw

以下のオプションをキーワード引数で指定します。
when

イベントの発生タイミングを次の文字列で指定します。
now」 : コマンドが戻る前に、ただちにイベントを処理します。これはデフォルトです。
tail」 : このアプリケーション用に既にキューに入れられているすべてのイベントの後ろにイベントを配置します。

rootx

イベントオブジェクトの「x_root」属性に指定値を代入します。

rooty

イベントオブジェクトの「y_root」属性に指定値を代入します。

sendevent

イベントオブジェクトの「send_event」属性に指定値を代入します。

serial

イベントオブジェクトの「serial」属性に指定値を代入します。

state

イベントオブジェクトの「state」属性に指定値を代入します。

time

イベントオブジェクトの「time」属性に指定値を代入します。

x

イベントオブジェクトの「x」属性に指定値を代入します。また、「x_root」属性値に指定値を加算します。

y

イベントオブジェクトの「y」属性に指定値を代入します。また、「y_root」属性値に指定値を加算します。


備考

「**kw」オプションとして「data」、「root」、「subwindow」を指定することができますが、これらはイベントオブジェクトの属性として取得することができません。Tcl/Tk における「バインドスクリプト」の「%」置換での「%d」、「%R」、「%S」に格納され、「bind」メソッドで Tcl 関数として呼び出すことで取得できます。「bind」メソッドの備考を参照して下さい。

tkinter では他に多くのオプションが定義されていますが、Windows ではエラーになります。

イベントオブジェクトについては イベントを参照して下さい。

object.event_info(virtual=None)

システム定義の仮想イベントおよび「event_add」メソッドで作成した仮想イベントに関連付けられているシステム定義イベントのリストを取得します。


引数
virtual

取得する仮想イベントの名前を指定します。イベントの名前は「<< >>」で囲んだ文字列です。

指定なしまたは「None」を指定すると、全ての仮想イベントの名前ををタプルで返します。


返り値

指定した仮想イベントに関連付けられているシステム定義のイベントをタプルで返します。
引数が指定されていないか「None」の場合、全ての仮想イベントの名前ををタプルで返します。


備考

取得する仮想イベントはシステム定義のイベントが関連づけられているもので、「event_generate」で生成される仮想イベントは取得できません。

object.focus_displayof()

 ウィンドウ上のフォーカスがあるウィジェットの名前(パス名)を取得します。


返り値

 ウィンドウを含むフォーカスがあるウィジェットの名前(パス名)。ウィンドウ上にフォーカスがない場合、「None」が返ります。


備考

 複数のディスプレイで動作させている場合にも有効です。

object.focus()

 「focus_set」メソッドと同じです。

object.focus_displayof()

 ウィンドウ上のフォーカスがあるウィジェットの名前(パス名)を取得します。


返り値

 ウィンドウを含むフォーカスがあるウィジェットの名前(パス名)。ウィンドウ上にフォーカスがない場合、「None」が返ります。


備考

 複数のディスプレイで動作させている場合にも有効です。

object.focus_force()

 ウィンドウを含むウィジェットにフォーカスを設定します。


備考

 フォーカスのないウィンドウのウィジェット(ウィンドをを含む)にフォーカスを設定することができます。フォーカスのあるウィンドウでは、ウィジェットへのフォーカスの設定は「focus」または「focus_set」メソッドを用いて、このメソッドの使用は控えるべきです。

object.focus_get()

 ウィンドウ上のフォーカスがあるウィジェットの名前(パス名)を取得します。


返り値

 ウィンドウを含むフォーカスがあるウィジェットの名前(パス名)。ウィンドウ上にフォーカスがない場合、「None」が返ります。


備考

 複数のディスプレイを用いて動作させている場合は「focus_displayof」メソッドを用います。

object.focus_lastfor()

 フォーカスを持たないウィンドウがフォーカスを得たとき、そのウィンドウ上でフォーカスを持つウィジェットの名前(パス名)を取得します。


返り値

 ウィンドウを含むフォーカスを持つウィジェットの名前(パス名)。


備考

 オブジェクトが属するウィンドウがフォーカスを持っているとき、現在のフォーカスを持っているウィジェットの名前が返ります。オブジェクトが属するウィンドウがフォーカスを持っていないとき、そのウィンドウがフォーカスを得たときのフォーカスを持つウィジェットの名前が返ります。

object.focus_set()

 オブジェクトが属するウィンドウがフォーカスを持っているとき、ウィジェットにフォーカスを設定します。


備考

 オブジェクトが属するウィンドウがフォーカスを持っていないときは、そのウィンドウがフォーカスを得たときのフォーカスを持つウィジェットが設定されます。

object.getboolean(s)

指定した値に対するブール値を取得します。


引数
s

ブール値として評価できる値を指定します。ブール演算値または整数値および整数の文字列です。


返り値

評価された結果の「True」または「False」のブール値。


備考

ブール値として評価できない値を引数に指定するとエラーになります。

object.getdouble(x)

Python の組み込み関数「float」と同じです。

object.getint(x)

文字整数値を数値に変換します。


引数
x

変換する 2、8、10、16 進数を文字列で指定します。


返り値

整数値を返します。

object.getvar(name='PY_VAR')

Tcl 変数に代入されている値を取得します。


引数
name

Tcl 変数の名前を文字列で指定します。


返り値

代入されている値。


備考

Tcl 変数は tkinter のベースとなっている Tcl プログラム言語の変数です。変数に値を設定するには「setvar」メソッドを用います。

object.grab_current()

グラブが設定されているオブジェクトのパス名を取得します。


返り値

グラブが設定されている場合、そのウィンドウパス名。設定されていない場合、「None」。

object.grab_release()

「grab_set」または「grab_set_global」メソッドで設定したオブジェクトのグラブを解除します。


備考

グラブが設定されていないオブジェクトに対しては、何も影響しません。

object.grab_set()

 このオブジェクトがアプリケーションにおけるイベントを受け取ることを設定します(グラブの設定)。


備考

 フォーカスはこのメソッドを実行したオブジェクトに自動的には設定されません。他のオブジェクトにフォーカスがあるとき、キーボード入力はフォーカスのあるオブジェクトとこのメソッドを実行したオブジェクトの両方で受け取ります。
 このメソッドを実行したウィンドウにアプリケーションまたはマウスクリックでアクティブにしてフォーカスを設定すると、このウィンドウは他のウィンドウの最前面に表示されます。また、他のウィンドウに対するマウスクリックのイベントは、このメソッドを実行したウィンドウも受け取るので、このウィンドウはアクティブになり最前面に表示されます。
 このメソッドを実行したウィンドウがアクティブでフォーカスを持つとき、他のウィンドウに対するイベントはこのウィンドウが全て受け取り実行します。但し、タイトルバーをドラッグする移動などの OS が操作する一部の動作は他のウィンドウでも実行されます。この動作を行わせないようにするには、他のウィンドウを「wm_attributes」メソッドの「disabled」オプションで無効化する必要があります。

 このオブジェクトに設定したグラブを解除するには「grab_release」メソッドを用います。

object.grab_set_global()

 このオブジェクトがデスクトップ上におけるイベントを受け取ることを設定します(グラブの設定)。


備考

 フォーカスはこのメソッドを実行したオブジェクトに自動的には設定されません。このメソッドを実行したウィンドウがアクティブでないとき、受け取ったイベントの、例えばウィンドウのアクティブ化やキーボード入力などの OS による処理はこのウィンドウでは無視されます。
 このメソッドを実行したウィンドウがアクティブでフォーカスを持つとき、アプリケーションおよびディスクトップ上の他のウィンドウに対するイベントも同時にこのウィンドウが全て受け取ります。このとき、アプリケーションでのウィンドウのタイトルバーをドラッグする移動、キーボード操作、ウィンドウの閉じるボタンの操作などの OS が操作する動作は実行されません。アプリケーションで実現する必要があります。

 このメソッドを実行したオブジェクトはアプリケーション以外のイベントも受け取るため、使用には注意が必要です。オブジェクトにグラブ設定をするには、通常の場合「grab_set」メソッドを用います。

 このオブジェクトに設定したグラブを解除するには「grab_release」メソッドを用います。

object.grab_status()

 オブジェクトのグラブの設定状態を取得します。


返り値

 グラブが設定されていないときは「None」、「grab_set」が設定されているときは「local」、「grab_set_global」が設定されているときは「global」の文字列を返します。

object.grid_bbox(column=None, row=None, col2=None, row2=None)
Grid クラスの「grid_configure」メソッドによって分割されたセルの開始セルと終了セルを含む範囲の座標とサイズを取得します。
引数
column
開始セルの列インデックス。
row
開始セルの行インデックス。
col2
終了セルの列インデックス。
row2
終了セルの行インデックス。
返り値
指定された範囲の左上座標(x座標、y座標)とサイズ(幅、高さ)が順に 4 つの要素を持つタプルで返されます。
備考
引数「column」と「row」の組、または「col2」と「row2」の組のみが指定されている場合、指定されたセルの座標とサイズを取得します。
object.grid_columnconfigure(index, cnf={}, **kw)
Grid クラスの「grid_configure」メソッドによって分割されたセルの指定した列のオプションを設定、取得します。
引数
index
設定するセルの列を「整数値」、「ウィンドウパス名」、文字列「all」のいずれかで指定します。「整数値」はセルの列のインデックス、「ウィンドウパス名」は指定するセルに配置されているオブジェクトのパス名、文字列「all」は全てのセルの列を指します。

オプションの値を取得する場合は「整数値」を指定します。

cnf
設定するオプションに以下のキーワードの文字列と値を辞書型で指定します。
オプションの値を取得する場合、この引数は用いられません。
minsize
セルの最少幅をピクセル単位で指定します。セルに配置されるオブジェクトのサイズがこのサイズより小さい場合に、セルは余白を持ってこのサイズに設定されます。
weight
列の相対的な幅を整数値で指定します。「uniform」オプションが同じ値の列のグループで、この値が最も小さい列幅を基準にして同じ値の「uniform」オプションのセルの幅が設定されます。値「0」は「1」と同じです。
uniform
「weight」オプションで列幅を設定するセルのグループを整数値または文字列で指定します。
pad
セルの左右に追加する余白をピクセル単位で指定します。
**kw
設定する列のオプションをキーワードで指定します。オプションは前記の「cnf」引数と同じです。
オプションの値を取得する場合、キーワードのみを指定します。一つのキーワードしか指定できません。
返り値
「**kw」にオプションのキーワードのみが指定されている場合、「index」に指定した列の指定したキーワードのオプション値が返されます。
「**kw」に何も指定されていない場合、「index」に指定した列の現在の全てのオプションの設定値がキーワードと値の辞書型で返されます。
備考
「index」に「all」を指定して、「weight」および「uniform」オプションに任意の値を指定すると、全てのセルの幅はその最大幅のセルと同じに設定されます。
object.grid_location(x, y)
Grid クラスの「grid_configure」メソッドによって分割されたセルの指定したピクセル座標でのインデックス座標を取得します。
引数
x
インデックス座標を取得するセルの横座標をピクセル単位で指定します。
y
インデックス座標を取得するセルの縦座標をピクセル単位で指定します。
返り値
セルの列インデックと行インデックスがタプルで返されます。
備考
セルの範囲を超えたピクセル座標を指定すると、上と左を超えた場合は「-1」を、下と右を超えた場合は最大インデックスに「1」が加算されたインデックス値が返されます。
object.grid_propagate(flag=['_noarg_'])
Grid クラスの「grid_configure」メソッドによるサイズ調整の有効、無効の設定、および設定状態の取得をします。
引数
flag
サイズ調整の有効、無効をブール値で指定します。「True」を指定すると有効になり、デフォルトです。「False」を指定すると無効になります。
値を指定しない場合、現在の設定値を返します。
返り値
引数に値を指定しない場合、現在の設定値を返します。設定値が「True」の場合は「True」、「False」の場合は「None」が返ります。
備考
オブジェクト(部品)を「grid_configure」メソッドでオブジェクト(コンテナ)に配置すると、コンテナが「wm_geometry」メソッドまたは「place_configure」メソッドで設定されている場合を除いて、デフォルトでコンテナは部品に合わせてシステムによりサイズが調整されます。調整機能が有効の場合、コンテナでの指定したサイズは無視されます。無効を設定すると、コンテナは指定したサイズで表示されます。
object.grid_rowumnconfigure(index, cnf={}, **kw)
Grid クラスの「grid_configure」メソッドによって分割されたセルの指定した行のオプションを設定、取得します。
引数
index
設定するセルの行を「整数値」、「ウィンドウパス名」、文字列「all」のいずれかで指定します。「整数値」はセルの行のインデックス、「ウィンドウパス名」は指定するセルに配置されているオブジェクトのパス名、文字列「all」は全てのセルの行を指します。

オプションの値を取得する場合は「整数値」を指定します。

cnf
設定するオプションに以下のキーワードの文字列と値を辞書型で指定します。
オプションの値を取得する場合、この引数は用いられません。
minsize
セルの最少の高さをピクセル単位で指定します。セルに配置されるオブジェクトのサイズがこのサイズより小さい場合に、セルは余白を持ってこのサイズに設定されます。
weight
行の相対的な高さを整数値で指定します。「uniform」オプションが同じ値の行のグループで、この値が最も小さい行の高さを基準にして同じ値の「uniform」オプションのセルの高さが設定されます。値「0」は「1」と同じです。
uniform
「weight」オプションで行の高さを設定するセルのグループを整数値または文字列で指定します。
pad
セルの上下に追加する余白をピクセル単位で指定します。
**kw
設定する行のオプションをキーワードで指定します。オプションは前記の「cnf」引数と同じです。
オプションの値を取得する場合、キーワードのみを指定します。一つのキーワードしか指定できません。
返り値
「**kw」にオプションのキーワードのみが指定されている場合、「index」に指定した行の指定したキーワードのオプション値が返されます。
「**kw」に何も指定されていない場合、「index」に指定した行の現在の全てのオプションの設定値がキーワードと値の辞書型で返されます。
備考
「index」に「all」を指定して、「weight」および「uniform」オプションに任意の値を指定すると、全てのセルの高さはその最大の高さのセルと同じに設定されます。
object.grid_size()
Grid クラスの「grid_configure」メソッドによって分割されたセルの列および行の数を取得します。
返り値
列数と行数を順にタプルで返します。
object.grid_slaves(row=None, column=None)
オブジェクト(コンテナ)にGrid クラスの「grid_configure」メソッドによって配置されているオブジェクト(部品)を取得します。
引数
row
オブジェクト(部品)を取得するセルの行のインデックスを指定します。
column
オブジェクト(部品)を取得するセルの列のインデックスを指定します。
返り値
取得したオブジェクト(部品)を最も新しく配置された順にリスト形式で返します。
引数が設定されていない場合、全てのオブジェクト(部品)が返されます。
「row」のみが設定されている場合、指定した行の全てのオブジェクト(部品)が返されます。
「column」のみが設定されている場合、指定した列の全てのオブジェクト(部品)が返されます。
object.image_names()

アプリケーションで現在使用できる全てのイメージオブジェクトの名前を取得します。


返り値

取得したイメージオブジェクトの名前をタプル形式で返します。

object.image_types()

アプリケーションで現在使用できる全てのイメージオブジェクトのタイプを取得します。


返り値

取得したイメージオブジェクトのタイプを文字列のタプル形式で返します。


備考

イメージオブジェクトのタイプは「photo」と「bitmap」です。

object.keys()

オブジェクトに定義されている全てのオプションキーワードを取得します。


返り値

取得したキーワードをリスト形式で返します。


備考

取得したキーワードのオプションが全て有効とは限りません。システム(OS)の制限で使用できないものがあります。

object.lift(aboveThis=None)

 「tkraise」メソッドと同じです。

object.lower(belowThis=None)

 オブジェクトを指定したオブジェクトの背面に表示するように移動します。


引数
belowThis

 背面に表示する基準のオブジェクトを指定します。
 デフォルトまたは「None」を指定すると最背面に表示します。


備考

 指定した表示は一時的です。例えば、オブジェクトがウィンドウの場合、他のウィンドウがアクティブになると指定は解除されます。

 Wm クラスの「wm_attributes」メソッドの「-topmost」属性でウィンドウの最前面表示の指定がなされている場合、指定は解除されて「lower」メソッドが実行されます。

object.mainloop(n=0)

 アプリケーションでのスクリプトの実行を待機させて、イベントの処理を行います。


引数
n

 同時に存在するルートレベルウィンドウのしきい値(最少数)を指定します。ルートレベルウィンドウの数がこの値以下になると、このメソッドは終了します。


備考

 通常、ルートレベルウィンドウは 1 つでプログラミングするので、引数 n は指定しません。デフォルトのまま使用します。

 このメソッドはルートウィンドウ以外のウィジェットから呼び出すことができますが、その動作は呼び出したウイジェットに依存しません。

object.nametowidget(name)

ウィンドウパス名からオブジェクトを取得します。


引数
name

取得するオブジェクトのウィンドウパス名を指定します。


返り値

指定したウィンドウパス名のオブジェクトを返します。


備考

取得したオブジェクトは元のオブジェクトと同じです。

object.option_add(pattern, value, priority=None)

オブジェクトのオプションのデフォルト値を変更します。


引数
pattern

変更するオブジェクトのオプションを以下の書式の文字列で指定します。
書式 1

ChangeObject.Option

・「ChangeObject」にオプションを変更するオブジェクトをオブジェクト名(ウィンドウ名)またはクラス名でメインウィンドウから順に「.」(ピリオド)で区切って階層的に指定します。メインウィンドウのクラス名はデフォルトで「Tk」です。「className」オプションで変更した場合はその名前です。オブジェクト名はオブジェクトの「name」オプションで設定した名前です。

例えば、メインウィンドウに配置したオブジェクト名「aaa」のオブジェクトは「Tk.aaa」と指定します。さらに、オブジェクト名「aaa」に配置したオブジェクト名「bbb」のオブジェクトは「Tk.aaa.bbb」と指定します。

オブジェクト名の代わりに「Frame」や「Label」等のウィジェットのクラス名を指定すると、その階層にある同じクラスの全てのオブジェクトが指定されます。

例えば、メインウィンドウに配置したクラス名「Frame」のフレームオブジェクトを全て指定するには「Tk.Frame」と指定します。さらに、そのクラス名「Frame」のオブジェクトのどれかに配置したオブジェクト名「bbb」のオブジェクトは「Tk.Frame.bbb」と指定します。

・「ChangeObject」でメインウィンドウを指定する先頭の「Tk.」を「*」(アスタリスク)にして指定すると、それ以降は階層にかかわらずオブジェクトが指定されます。

例えば、メインウィンドウに階層構造を持って、クラス名「Frame」のフレームオブジェクトが配置されている場合、「*Frame」は階層に関係なく、全てのフレームオブジェクトが指定されます。また、任意のフレームオブジェクトに配置されているオブジェクト名「ccc」のオブジェクトは「*Frame.ccc」として指定します。

・「Option」に変更するオブジェクトのオプションをキーワードで指定します。

書式 2

ChangeObject*Option

「ChangeObject」と「Option」の指定は書式 1と同じです。「ChangeObject」と「Option」の区切りに「.」でなく「*」を用います。書式 1 ではオプションの変更は「ChangeObject」で指定したオブジェクトに適用されましたが、この書式では「ChangeObject」で指定したオブジェクトとそれに配置された全てのオブジェクトに適用されます。

例えば、「Tk.aaa.Frame*background」は「Tk.aaa.Frame」のオブジェクトとそれに配置されている全てのオブジェクトの背景色のオプションの値を変更します。

value

変更するオプションの値。

priority

変更したオプションの優先度。Windows では動作しません。デフォルトで用います。


備考

このメソッドによるオプションの値の変更はメソッドを実行した後に作成されるオブジェクトに適用されます。メソッドの実行前に作成したオブジェクトは変更されません。

object.option_clear()

「option_add」メソッドによるデフォルトオプションの設定値をクリアして、初期のデフォルト値にします。


備考

このメソッドの実行前に「option_add」メソッドで設定されたオブジェクトのオプション値はクリアされません。

object.option_get(name, className)

デフォルトオプションの設定値を取得します。Windows では動作しません。

object.option_readfile(fileName, priority=None)

オブジェクトのオプションのデフォルト値を変更するファイルを読み込みます。


引数
fileName

変更するオブジェクトのオプションと値を記述したファイル名を指定します。

ファイルに記述する書式は「option_add」メソッドの「pattern」を「:」(コロン)で区切って、「value」を記述します。「:」と「value」の間の半角空白は無視されます。

priority

変更したオプションの優先度。Windows では動作しません。デフォルトで用います。


備考

ファイルに記述するオプションの変更指定は、行毎に記述し最後に必ず改行する必要があります。

object.pack_propagate(flag=['_noarg_'])

「pack」メソッドによるサイズ調整の有効、無効の設定、および設定状態の取得をします。


引数
flag

サイズ調整の有効、無効をブール値で指定します。「True」を指定すると有効になり、デフォルトです。「False」を指定すると無効になります。

値を指定しない場合、現在の設定値を返します。


返り値

引数に値を指定しない場合、現在の設定値を返します。設定値が「True」の場合は「True」、「False」の場合は「None」が返ります。


備考

オブジェクトを「pack_configure」メソッドでオブジェクト(コンテナ)に配置すると、コンテナが「wm_geometry」メソッドまたは「place_configure」メソッドで設定されている場合を除いて、デフォルトでコンテナは部品に合わせてシステムによりサイズが調整されます。調整機能が有効の場合、コンテナでの指定したサイズは無視されます。無効を設定すると、コンテナは指定したサイズで表示されます。

object.pack_slaves()

「pack_configure」メソッドによってオブジェクトに配置されているオブジェクト(部品)を取得します。


返り値

取得したオブジェクト(部品)が配置された順にリスト形式で返します。

object.place_slaves()

「place_configure」メソッドによってオブジェクトに配置されているオブジェクト(部品)を取得します。


返り値

取得したオブジェクト(部品)を最も新しく配置された順にリスト形式で返します。

object.propagate(flag=['_noarg_']) object.focus()

「pack_propagate」メソッドと同じです。

object.quit()

「object.mainloop」メソッドの待機処理を終了します。


備考

このメソッドを実行しても、ウィジェットリソースは破棄されません。ウィジェットのオプションの設定値の取得や、「object.mainloop」メソッドを実行することができます。

object.register(func, subst=None, needcleanup=1)

Python 関数を Tcl の関数として登録し、その関数名を返します。


引数
func

登録する関数名を指定します。

subst

オプションとして登録する関数名を指定します。引数「func」で実行する関数より先に実行されます。

needcleanup

tck コマンド処理用のリスト操作のフラグです。デフォルトで用います。


返り値

登録された tcl 関数の名前を返します。


備考

引数「subst」でオプション登録した関数が設定されている場合、登録した tcl 関数の引数値を「subst」の関数が先に受け取ります。「subst」の関数の引数はその引数値を受け取れるように設定する必要があります。また、「subst」の関数は return 文でリストまたはタプル形式で値を返す必要があり、この返り値は「func」で登録する関数が受け取ります。そのため「func」の関数は引数に「*args」を設定します。

object.rowconfigure(index, cnf={}, **kw)

「grid_rowconfigure」メソッドと同じです。

object.selection_clear(**kw)

オブジェクト(ウィジェット)の処理に用いている Tcl クリップボードまたはシステムのクリップボードの内容をクリアします。


引数
**kw

クリアするクリップボードを「selection」キーワードに文字列で指定します。指定するクリップボードの文字列は「PRIMARY」と「CLIPBOARD」で、「PRIMARY」は Tcl クリップボード、「CLIPBOARD」はシステムのクリップボードです。デフォルトで「PRIMARY」が設定されています。


備考

Tcl クリップボードは、リストボックスオブジェクトの項目を選択するなどの場合に、Tcl で使用されます。

「selection」オプションに文字列「CLIPBOARD」を指定した場合は「clipboard_clear」メソッドと同じです。

object.selection_get(**kw)

オブジェクト(ウィジェット)の処理に用いている Tcl クリップボードまたはシステムのクリップボードから文字列を取得します。


引数
**kw

クリップボードを「selection」キーワードに文字列で指定します。指定するクリップボードの文字列は「PRIMARY」と「CLIPBOARD」で、「PRIMARY」は Tcl クリップボード、「CLIPBOARD」はシステムのクリップボードです。デフォルトで「PRIMARY」が設定されています。


備考

Tcl クリップボードは、リストボックスオブジェクトの項目を選択するなどの場合に、Tcl で使用されます。

「selection」オプションに文字列「CLIPBOARD」を指定した場合は「clipboard_get」メソッドと同じです。

クリップボードに文字列が格納されていない場合、エラーになります。

ウィジェット(オブジェクト)が使用している Tcl クリップボードから値を取得するには、このメソッドを実行する前に「selection_own」メソッドでウィジェットを指定しておく必要があります。

「selection_handle」メソッドでウィジェットに関数を指定している場合は、関数が返す値を取得します。

object.selection_handle(command, **kw)

Tcl クリップボードの値が「selection_get」メソッドで取得されるときに実行する関数を指定します。指定した関数の返り値を「selection_get」メソッドの取得値に設定します。


引数
command

実行する関数を指定します。関数には 2 つの引数を設定する必要があります。

**kw

クリップボードを「selection」キーワードに文字列で指定します。指定できるクリップボードは「PRIMARY」です。デフォルトで「PRIMARY」が設定されています。


備考

Tcl クリップボードは、リストボックスオブジェクトの項目を選択するなどの場合に、Tcl で使用されます。

このメソッドを実行したウィジェット(オブジェクト)の Tcl クリップボードから「selection_get」で値を取得すると、取得する値は「command」引数で指定した関数からの返り値になります。関数には「offset」と 「maxChars」が渡されます。「offset」は選択範囲内の開始文字位置を指定し、「maxChars」は取得する最大文字数を指定しますが、Windows では指定できません。デフォルトで「offset」には「0」、「maxChars」には「4000」が設定されます。

このメソッドを実行すると、Windows では解除することができません。Tc/Tk の仕様では「command」に空文字を指定すると解除されるとありますが、Windows ではエラーになります。

object.selection_own(**kw)

オブジェクトを Tcl クリップボードを使用しているオブジェクト(ウィジェット)に設定します。


引数
**kw

以下のキーワードのオプションを指定します。

command

別のクリップボードを使用しているオブジェクト(ウィジェット)に変更されたときに実行する関数を指定します。デフォルトでは関数は指定されていません。

selection

クリップボードを指定します。指定できるクリップボードは「PRIMARY」です。デフォルトで「PRIMARY」が設定されています。


備考

Tcl クリップボードは、リストボックスオブジェクトの項目を選択するなどの場合に、Tcl で使用されます。このクリップボードはオブジェクト(ウィジェット)毎に設定されます。

Tcl クリップボードがどのオブジェクト(ウィジェット)のクリップボードであるかをこのメソッドで宣言します。「selection_get」メソッドで取得する Tcl クリップボードは、このメソッドで宣言されているオブジェクト(ウィジェット)のクリップボードです。

「command」オプションで設定された関数は 1 度実行されるとその後は無効になります。また、自身のオブジェクトが再度設定されても無効になります。繰り返し実行するには、関数の中で再度設定します。

object.selection_own_get(**kw)

現在の Tcl クリップボードを使用しているオブジェクト(ウィジェット)を取得します。


引数
**kw

クリップボードを「selection」キーワードに文字列で指定します。指定するクリップボードの文字列は「PRIMARY」です。デフォルトで「PRIMARY」が設定されています。


返り値

オブジェクトを返します。


備考

Tcl クリップボードは、リストボックスオブジェクトの項目を選択するなどの場合に、Tcl で使用されます。このクリップボードはオブジェクト(ウィジェット)毎に設定されます。

object.send(interp, cmd, *args)

Tcl コマンドを別のインタープリターに送信して実行します。


備考

Windows では無効になっています。使用できません。

object.setvar(name='PY_VAR', value='1')

Tcl 変数に値を代入します。


引数
name

値を代入する Tcl 変数の名前を文字列で指定します。

value

代入する値を指定します。


備考

Tcl 変数は tkinter のベースとなっている Tcl プログラム言語の変数です。変数から値を取得するには「getvar」メソッドを用います。

object.size()

「grid_size」メソッドと同じです。

object.slaves()

「pack_slaves」メソッドと同じです。

object.tk_bisque()

アプリケーションの色を、Tk 3.6 以前のバージョンで使用されていた薄茶色 (「ビスク」) 配色に復元します。下位互換性のために提供されています。

object.tk_focusFollowsMouse()

アプリケーションのオブジェクト(ウィジェット)上にマウスポインタがあるとき、自動的にそのオブジェクトがフォーカスを受け取るように設定します。


備考

フォーカスを受け取れるように設定されているオブジェクト(ウィジェット)に対してのみ有効です。

このメソッドの動作を取り消すメソッドはありません。

object.tk_focusNext()

自身のオブジェクトの次にフォーカスを受け取るオブジェクト(ウィジェット)を取得します。


返値
次にフォーカスを受け取るオブジェクトを返します。
備考

自身のオブジェクトがコンテナの場合、オブジェクトのコンテナ内でフォーカスを受け取る最初のオブジェクトが返されます。

「takefocus」が「False」に設定されているオブジェクトはフォーカスを受け取るオブジェクトからは除外されます。

全てのオブジェクトがフォーカスを受け取れない場合、メソッドを実行した自身のオブジェクトを返します。

フォーカスを受け取る順番の最後の次は最初に戻ります。

object.tk_focusPrev()

自身のオブジェクトの前にフォーカスを受け取るオブジェクト(ウィジェット)を取得します。


返値
前にフォーカスを受け取るオブジェクトを返します。
備考

自身のオブジェクトがコンテナの場合、オブジェクトのコンテナ内でフォーカスを受け取る最後のオブジェクトが返されます。

「takefocus」が「False」に設定されているオブジェクトはフォーカスを受け取るオブジェクトからは除外されます。

全てのオブジェクトがフォーカスを受け取れない場合、メソッドを実行した自身のオブジェクトを返します。

フォーカスを受け取る順番の最初の前は最後に戻ります。

object.tk_setPalette(*args, **kw)

オブジェクトの色指定に関するオプションのデフォルト値を変更します。


引数
*args

「background」オプションのデフォルト値を指定します。この引数を設定した場合、「**kw」引数は使用できません。

**kw

オプションのデフォルト値をキーワードで指定します。指定できるオプションは次のキーワードです。
 activeBackground, foreground, selectColor,
 activeForeground, highlightBackground, selectBackground,
 background, highlightColor, selectForeground,
 disabledForeground, insertBackground, troughColor

この引数を設定した場合、「*arg」引数は使用できません。


備考

このメソッドを実行すると、オブジェクトが属するルートウィンドウの全てのオブジェクトのデフォルト値が変更されて適用されます。

キーワード名がオプション名と異なり一部が大文字になっていることに注意する必要があります。オプション名と同じ小文字を用いても動作しますが、他のオブジェクトに変更が適用されない等、動作が保証されません。

object.tk_strictMotif(boolean=None)

Motif 準拠の設定、取得をします。


引数
boolean

「True」を指定すると、Tk は Motif のルック アンド フィール標準にできる限り厳密に準拠しようとします。「False」または「None」を指定すると、設定を解除します。デフォルトは「False」です。


返り値
引数を指定しない場合、現在の設定値をブーリアンで返します。引数を指定した場合、指定値を返します。
備考

Motifは Unix プラットフォーム用の標準的なグラフィカルユーザーインターフェイスです。

Windows ではこの設定は無効です。

object.tkraise(aboveThis=None)

 オブジェクトを指定したオブジェクトの前面に表示するように移動します。


引数
aboveThis

 前面に表示する基準のオブジェクトを指定します。

デフォルトまたは「None」を指定すると最前面に表示します。


備考

 指定した表示は一時的です。例えば、オブジェクトがウィンドウの場合、他のウィンドウがアクティブになると指定は解除されます。

 Wm クラスの「wm_attributes」メソッドの「-topmost」属性でウィンドウの最前面表示の指定がなされている場合、「tkraise」メソッドは実行されません。「tkraise」メソッドを実行するには、実行前に「-topmost」属性に「False」を指定して解除する必要があります。

object.unbind(sequence, funcid=None)

「bind」メソッドでバインドしたイベントを解除します。


引数
sequence

解除する「bind」メソッドで指定したイベントの文字列パターンを指定します。

funcid

解除する「bind」メソッドの識別子を指定します。
 Windows では、この識別子によるを「unbind」メソッドは動作しません。


備考

引数「funcid」を省略すると引数「sequence」のイベントのバインドを全て解除します。

Windows では引数「funcid」による解除する「bind」メソッドの指定は動作しません。指定しても、引数「sequence」のイベントのバインドを全て解除します。

object.unbind_all(sequence)

「bind_all」メソッドでバインドしたイベントを解除します。


引数
sequence

解除する「bind_all」メソッドで指定したイベントの文字列パターンを指定します。


備考

同一イベントを「bind」メソッドでバインドしたイベントがあるとき、「unbind_all」メソッドを実行した後にその「bind」メソッドでのイベント処理は有効になります。

object.unbind_class(className, sequence)

「bind_class」メソッドでバインドしたイベントを解除します。


引数
className

イベントを解除するオブジェクトのクラス名を指定します。

sequence

解除する「bind_class」メソッドで指定したイベントの文字列パターンを指定します。

object.update()

 保留中のコールバックを含むすべてのイベントの処理を実行し、終了するまで待機します。


備考

 待機中にもユーザーが操作するキーボード入力などのイベントは受け入れられます。

object.update_idletasks()

 保留中のコールバックの処理を実行し、終了するまで待機します。


備考

 待機中に、新しいイベントやエラーは処理されません。アイドル状態のコールバックのみが呼び出されます。

object.wait_variable(name='PY_VAR')

ウィジェット変数(IntVar、StringVar、DoubleVar、BooleanVar)または Tcl 変数の値が変更されるのを待ちます。


引数
name

変更を待つ変数の名前を指定します。

備考

ウィジェット変数はオブジェクトが名前を返すので、引数「name」にオブジェクトを指定することができます。

object.wait_visibility(window=None)

オブジェクト(ウィジェット)が表示されるのを待ちます。


引数
window

表示されるのを待つオブジェクトを指定します。

指定しないか「None」を指定すると、メソッドを実行したオブジェクトが指定されます。デフォルトは「None」が指定されています。


備考

待機中に指定したオブジェクトが無くなる(破棄される)とエラーになります。

object.wait_window(window=None)

オブジェクト(ウィジェット)が破棄されるのを待ちます。


引数
window

破棄されるのを待つオブジェクトを指定します。

指定しないか「None」を指定すると、メソッドを実行したオブジェクトが指定されます。デフォルトは「None」が指定されています。

object.waitvar(name='PY_VAR')

「wait_variable」メソッドと同じです。

object.winfo_atom(name, displayof=0)

アトムの名前に対する整数値を生成、取得します。


引数
name

整数値を生成、取得するアトムの名前を指定します。

displayof

 使用しません。

返り値

 引数「name」で指定したアトム名の整数値を返します。アトム名が登録されていない場合、名前を登録して、登録したアトム名に対する整数値を返します。

備考

アトム名に対する整数値は Tcl/Tk のシステムで使用されます。整数値の 1 ~ 69 はシステムで定義されいるアトムが使用しています。

object.winfo_atomname(id, displayof=0)

指定した整数値に対応するアトムの名前を取得します。


引数
name

名前を取得するアトムの整数値を指定します。

displayof

 使用しません。


返り値

引数「id」で指定した整数値のアトム名を返します。


備考

引数「id」に登録されていないアトムの整数値を指定した場合はエラーになります。

object.winfo_cells()

オブジェクトで使用されているカラーマップのカラー数を取得します。


返り値

カラー数を整数値で返します。


備考

Windows ではカラー数は通常 256 です。

object.winfo_children()

オブジェクトの子のオブジェクト(ウィジェット)を取得します。


返り値

子のオブジェクトを全てリスト形式で返します。

object.winfo_class()

オブジェクトのクラス名を取得します。


返り値

クラス名の文字列


備考

オブジェクトを作成したクラス名を取得します。オブジェクトが「class」オプションでクラス名が設定されているとき、そのクラス名を取得します。

object.winfo_colormapfull()

カラーマップの設定状態を取得します。


返り値

カラーマップに全ての色が設定されている場合、「True」を返します。それ以外の場合、「False」を返します。


備考

現在の Windows ではカラーマップを使用していないので、「False」が返ります。

object.winfo_class()

オブジェクトのクラス名を取得します。


返り値

クラス名の文字列


備考

オブジェクトを作成したクラス名を取得します。オブジェクトが「class」オプションでクラス名が設定されているとき、そのクラス名を取得します。

object.winfo_containing(rootX, rootY, displayof=0)

指定したスクリーン座標にあるオブジェクト(ウィジェット)を取得します。


引数
rootX

スクリーンの横座標をピクセル単位で指定します。

rootY

スクリーンの縦座標をピクセル単位で指定します。

displayof

使用しません。


返り値

座標位置にオブジェクト(ウィジェット)がある場合、オブジェクトを返します。ない場合は「None」を返します。

備考

オブジェクト(ウィジェット)の描画が完了していない場合、「None」が返ります。描画コマンドの直後に取得するときは、「update」メソッドを実行して描画を完了させる必要があります。

object.winfo_depth()

ピクセルの色表示に用いられているビット数を取得します。


返り値

整数値で返します。


備考

Windows 10 では、色表示に 32 ビットが用いられています。

object.winfo_exists()

オブジェクト存在しているかを調べます。


返り値

オブジェクトが存在している場合は「1」を返します。


備考

Python では、存在していないオブジェクトを呼び出すとエラーになります。このメソッドを用いる場合は、「try」「except」コマンドで判定します。

object.winfo_fpixels(number)

指定した値をピクセル単位に変換します。


引数
number

変換する値を整数値または文字列で指定します。


返り値

ピクセル値を浮動小数点数で返します。

備考

指定する値がピクセルの場合、整数値または整数文字で指定します。このとき、同じ値が浮動小数点数で返されます。c(センチメートル)、m(ミリメートル)、i(インチ)、p(ポイント)の場合は文字列で指定します。

object.winfo_geometry()

 ウィンドウのサイズと表示位置を取得します。


返り値

 「幅 x 高さ + x + y」 の形式の文字列で返します。すべての寸法はピクセル単位です。


備考

 Wm クラスメソッドの「wm_geometry」メソッドでの取得と同じです。「setgrid」オプションを持つウィジェット(リストボックスやテキストなど)によってウィンドウがグリッド化されていても、「wm_geometry」メソッドと異なりピクセル単位になります。

object.winfo_height()

 オブジェクトの高さをピクセル単位で取得します。


返り値

 オブジェクトの高さをピクセル単位の文字列で返します。


備考

 このメソッドでオブジェクトの高さを取得する際には、変更値がオブジェクトに反映された後に行います。パラメータの反映の待機は「update」メソッドを用います。

 タイトルバーを持つウィンドウの場合、取得する高さはクライアント領域の高さになります。

object.winfo_id()

 オブジェクトの識別子を取得します。


返り値

 オブジェクトの識別子を整数値で返します。


備考

 このメソッドが取得する識別子は Windows におけるウィンドウハンドルと同じです。ただ、ウィンドウのような複数の部品から構成されているウィジェットの場合は、必ずしも Windows が扱うオブジェクトのウィンドウハンドルとは一致しません。ウィンドウの場合、Windows で用いるハンドルを取得するには「wm_frame」メソッドを用います。

object.winfo_interps(displayof=0)

現在登録されている Tcl インタープリターを取得します。


引数
displayof

使用しません。

返り値

すべての Tcl インタープリターの名前をタプルで返します。


備考

Windows では動作しません。空のタプルを返します。

object.winfo_ismapped()

オブジェクトの表示(マップ)状態を取得します。


返り値

表示されている場合は「1」、表示されていない場合は「0」を返します。


備考

オブジェクトはジオメトリマネージャで配置を実行して完了するまで表示されません。このメソッドは配置メソッドが実行され完了しているかを確認するのに用います。

object.winfo_manager()

オブジェクトを配置をしているジオメトリマネージャの名前を取得します。


返り値

ジオメトリマネージャの名前を返します。


備考

名前は通常、wm、pack、place、grid など、ジオメトリ マネージャーの Tcl コマンドの名前です。

object.winfo_name()

オブジェクトの名前を取得します。


返り値

オブジェクトの名前を返します。

object.winfo_parent()

親オブジェクトのパス名を取得します。


返り値

オブジェクトのパス名を返します。

object.winfo_pathname(id, displayof=0)

指定したオブジェクトのパス名を取得します。


引数
id

パス名を取得するオブジェクトの識別子を指定します。

displayof

使用しません。

返り値

「id」で指定したオブジェクトのパス名を返します。

備考

オブジェクトの識別子は「winfo_id」メソッドで取得した値です。

 Windows では、指定する「id」の値は16進数の必要があります。10進数の整数値で指定するとエラーになります。

 パス名は「str(object)」で直接オブジェクトから取得することもできます。

object.winfo_pixels(number)

浮動小数点数を整数値に丸めます。


引数
number

丸める数値を浮動小数点数で指定します。

返り値

「number」で指定した浮動小数点数を四捨五入して整数値で返します。

備考

引数に整数値を指定すると、そのままの整数値で帰ります。

「winfo_fpixels」メソッドで取得した値を整数のピクセル値に丸めるのに使用します。

object.winfo_pointerx()

メインウィンドウ上のマウスポインタの横座標を取得します。


返り値

スクリーン上の横座標をピクセル単位で返します。

object.winfo_pointerxy()

メインウィンドウ上のマウスポインタの座標を取得します。


返り値

スクリーン上の横座標と縦座標をピクセル単位でタプル形式で返します。

object.winfo_pointery()

メインウィンドウ上のマウスポインタの縦座標を取得します。


返り値

スクリーン上の縦座標をピクセル単位で返します。

object.winfo_reqheight()

オブジェクトの「height」オプションで設定されている高さの値をピクセル単位で取得します。


返り値

オブジェクトの高さの設定値をピクセル単位の文字列で返します。


備考

オブジェクトが「wm_geometry」または「geometry」メソッドでサイズが設定されている場合、このメソッドでの取得値はオブジェクトの実際の高さとは異なります。

このメソッドでオブジェクトの高さを取得する際には、変更値がオブジェクトに反映された後に行います。パラメータの反映の待機は「update」メソッドを用います。

object.winfo_reqwidth()

オブジェクトの「width」オプションで設定されている高さの値をピクセル単位で取得します。


返り値

オブジェクトの幅の設定値をピクセル単位の文字列で返します。


備考

オブジェクトが「wm_geometry」または「geometry」メソッドでサイズが設定されている場合、このメソッドでの取得値はオブジェクトの実際の幅とは異なります。

 このメソッドでオブジェクトの幅を取得する際には、変更値がオブジェクトに反映された後に行います。パラメータの反映の待機は「update」メソッドを用います。

object.winfo_rgb(color)

指定した色を 10 進数の RGB 値に変換します。


引数
color

変換する色を文字列で指定します。


返り値

RGB の それぞれ16 ビット値に変換して、順に 10 進数でタプルで返します。


備考

指定する色の文字列は色文字または「#rgb」文字列です。

object.winfo_rootx()

 スクリーンに対するオブジェクトの左端の x 座標の表示位置をピクセル単位で取得します。


返り値

 オブジェクトの左端の x 座標をピクセル単位の文字列で返します


備考

 取得値はスクリーンに対して表示されている値です。タイトルバーを持つウィンドウおよびそのウィンドウ内のウィジェットの場合、設定値より「8」ピクセル加算された値になります。

 このメソッドで値を取得する際には、変更値がオブジェクトに反映された後に行います。パラメータの反映の待機は「update」メソッドを用います。

object.winfo_rooty()

 スクリーンに対するオブジェクトの上端の y 座標の表示位置をピクセル単位で取得します。


返り値

 オブジェクトの上端の y 座標をピクセル単位の文字列で返します。


備考

 取得値はスクリーンに対して表示されている値です。オブジェクトがウィンドウの場合、クライアント領域の上端になります。タイトルバーを持つウィンドウおよびそのウィンドウ内のウィジェットの場合、設定値より「31」ピクセル加算された値になります。

 このメソッドで値を取得する際には、変更値がオブジェクトに反映された後に行います。パラメータの反映の待機は「update」メソッドを用います。

object.winfo_screen()

 X Windows でウィンドウに関連付けられた画面の名前を取得します。


備考

Windows では未使用です。このメソッドは削除予定です

object.winfo_screencells()

ディスプレイのデフォルトのカラーマップの表示色数を取得します。


返り値

表示色数を整数値で返します。


備考

Windows 10 の場合、デフォルトで通常、表示色数は 256 色です。

object.winfo_screendepth()

ディスプレイの色表示のピクセルあたりのビット数を取得します。


返り値

ピクセルあたりのビット数を整数値で返します。


備考

Windows の場合、デフォルトで通常、ピクセルあたりのビット数は 32 ビットです。RGB 各 8 ビットとアルファチャネル 8 ビットです。

object.winfo_screenheight()

 ウィンドウ画面(ディスプレイ)の高さをピクセル単位で取得します。


返り値

 ディスプレイの高さをピクセル単位の整数値で返します。

object.winfo_screenmmheight()

 ウィンドウ画面(ディスプレイ)の高さを mm 単位で取得します。


返り値

 ディスプレイの高さを mm 単位の整数値で返します。

object.winfo_screenmmwidth()

 ウィンドウ画面(ディスプレイ)の幅を mm 単位で取得します。


返り値

 ディスプレイの幅を mm 単位の整数値で返します。

object.winfo_screenvisual()

ディスプレイの色表示の方式を取得します。


返り値

色表示の方式を文字列で返します。


備考

取得する方式は「directcolor」、「grayscale」、「pseudocolor」、「staticcolor」、「staticgray」、「truecolor」です。Windows 10 の場合、デフォルトで通常、「truecolor」です。

object.winfo_screenwidth()

 ウィンドウ画面(ディスプレイ)の幅をピクセル単位で取得します。


返り値

 ディスプレイの幅をピクセル単位の整数値で返します。

object.winfo_server()

 ウィンドウを表示するサーバーに関する情報を取得します。


返り値

 ウィンドウを表示するサーバーに関する情報を文字列で返します。


備考

 Windowsの場合、現在のバージョンを返します。例えば、64 ビット Windowsw 10 の場合、「Windows 10.0 19044 Win64」として取得されます

object.winfo_toplevel()

オブジェクトが属するトップレベルウィンドウを取得します。


返り値

オブジェクトを返します。

object.winfo_viewable()

オブジェクトとそれが属する全ての祖先のオブジェクトが全て表示(マップ)されているかの状態を取得します。


返り値

表示されている場合は「1」、表示されていない場合は「0」を返します。

備考

オブジェクトはジオメトリマネージャで配置を実行して完了するまで表示されません。このメソッドは配置メソッドが実行され完了しているかを確認するのに用います

object.winfo_visual()

アプリケーションのカラーモデルを取得します。


返り値

カラーモデルの文字列を返します。

備考

カラーモデルは「directcolor」、「grayscale」、「pseudocolor」、「staticcolor」、「staticgray」、, 「truecolor」です。Windows 10 では通常「truecolor」です。

object.winfo_visualid()

アプリケーションでのビジュアル識別子 を取得します。


返り値

識別子を 16 進数で返します。

備考

X Windows 用です。Windows 10 では「0x0」を返します。

object.winfo_visualsavailable(includeids=0)

アプリケーションで使用できるカラーモデル、ピクセルの色表示に用いられているビット数、ビジュアル識別子を全て取得します。


引数
includeids

「1」を指定すると X Windows に用いるビジュアル識別子を取得します。デフォルトは「0」でビジュアル識別子を取得しません。


返り値

カラーモデル、ビット数、ビジュアル識別子をタプル形式でリストととして返します。

備考

引数「includeids」に「1」を指定しない場合、カラーモデルとビット数の 2 要素のタプルを返します。

カラーモデル、ビット数、ビジュアル識別子はそれぞれ「winfo_visual」、「winfo_depth」、「winfo_visualid」メソッドで個別に取得することができます。

object.winfo_vrootheight()

このオブジェクトに関連付けられた仮想ルートウィンドウの高さを取得します。


返り値

ウィンドウの高さをピクセル単位で返します。

備考

仮想ルートウィンドウがない場合はスクリーンの高さを返します。

X Windows 用です。Windows 10 ではスクリーンの高さを返します。

object.winfo_vrootwidth()

このオブジェクトに関連付けられた仮想ルートウィンドウの幅を取得します。


返り値

ウィンドウの幅をピクセル単位で返します。

備考

仮想ルートウィンドウがない場合はスクリーンの幅を返します。

X Windows 用です。Windows 10 ではスクリーンの幅を返します。

winfo_vrootx()

このオブジェクトに関連付けられた仮想ルートウィンドウのルートウィンドウに対する横方向のオフセット値を取得します。

返り値

横方向のオフセット値をピクセル単位で返します。


備考

仮想ルートウィンドウがない場合は「0」を返します。

X Windows 用です。Windows 10 では「0」を返します。

winfo_vrooty()

このオブジェクトに関連付けられた仮想ルートウィンドウのルートウィンドウに対する縦方向のオフセット値を取得します。

返り値

縦方向のオフセット値をピクセル単位で返します。


備考

仮想ルートウィンドウがない場合は「0」を返します。

X Windows 用です。Windows 10 では「0」を返します。

object.winfo_width()

オブジェクトの幅を取得します。


返り値

オブジェクトの幅をピクセル単位の文字列で返します。


備考

このメソッドでオブジェクトの高さを取得する際には、変更値がオブジェクトに反映された後に行います。パラメータの反映の待機は「update」メソッドを用います。

object.winfo_x()

親オブジェクトに対するオブジェクトの左端の x 座標の表示位置を取得します。


返り値

オブジェクトの左端の x 座標をピクセル単位の文字列で返します


備考

取得値はオブジェクトに対して表示設定されている値です。タイトルバーを持つウィンドウの場合、これより「8」ピクセル加算された位置に表示されます。

 このメソッドで値を取得する際には、変更値がオブジェクトに反映された後に行います。パラメータの反映の待機は「update」メソッドを用います。

object.winfo_y()

親オブジェクトに対するオブジェクトの上端の y 座標の表示位置を取得します。


返り値

オブジェクトの上端の y 座標をピクセル単位の文字列で返します


備考

このメソッドで値を取得する際には、変更値がオブジェクトに反映された後に行います。パラメータの反映の待機は「update」メソッドを用います。