5

tkinterウィンドウに対するマウスの位置を取得する必要があります。

4

2 に答える 2

6

一般的に、この情報は渡されるイベントオブジェクトの一部として提供されるため、「取得」する必要はありません。この情報は、イベントに応答するときにのみ必要になる可能性があり、イベントによってこの情報が提供されます。

もっと簡潔に言えば、情報を取得するには、イベントオブジェクトから情報を取得するだけです。

次に例を示します。

import Tkinter

class App:
    def __init__(self, root):
        f = Tkinter.Frame(width=100, height=100, background="bisque")
        f.pack(padx=100, pady=100)
        f.bind("<1>", self.OnMouseDown)

    def OnMouseDown(self, event):
        print "frame coordinates: %s/%s" % (event.x, event.y)
        print "root coordinates: %s/%s" % (event.x_root, event.y_root)

root=Tkinter.Tk()
app = App(root)
root.mainloop()
于 2010-07-20T11:24:28.883 に答える
3

マウス移動イベントの画面座標(/)を取得し、ウィンドウの画面座標(/ xy_rootを減算します。window.winfo_rootx()y()

于 2010-07-20T08:30:11.757 に答える