8

私はpython(3)でtkを使用していますが、これはどの言語にも当てはまると思います。タイトルバーの外にあるtkウィンドウの現在のx、y座標を取得しようとしています:

import tkinter  
root = tkinter.Tk()

ただし、を使用するroot.winfo_y()と、タイトルバーの深さを含む座標が得られます。画面の左上隅にあるウィンドウの場合:

root.winfo_x(), root.winfo_y()          # returns (0, 22)

つまり、次を実行します。

root.geometry('+{}+{}'.format(root.winfo_x(), root.winfo_y()))

呼び出すたびに、ウィンドウを 22 ピクセル (タイトル バーの高さ) ずつ下に移動します。ウィンドウ全体の実際の座標を取得するにはどうすればよいですか?

4

1 に答える 1

5

Tkinter では、ほとんどの構成関数は、新しい値の引数なしで使用すると、現在の値を返します。したがってroot.geometry()、(さらにいくつかの文字列解析を加えて)目標を達成できます。

于 2012-11-17T08:27:57.033 に答える