我有一个带有视口的滚动窗口,大约 4000 像素高。有没有办法找出视口坐标中的鼠标位置?目前,我得到的位置是我实际看到的段中的位置,如果我向下滚动到底部,我仍然会得到大约 600 像素的垂直位置(这是我的窗口的大小) ,而不是我期望的 4000。如果没有简单的方法,如何确定滚动窗口滚动了多少?我相信,我可以把这些碎片拼凑起来。
谢谢,
v923z
我有一个带有视口的滚动窗口,大约 4000 像素高。有没有办法找出视口坐标中的鼠标位置?目前,我得到的位置是我实际看到的段中的位置,如果我向下滚动到底部,我仍然会得到大约 600 像素的垂直位置(这是我的窗口的大小) ,而不是我期望的 4000。如果没有简单的方法,如何确定滚动窗口滚动了多少?我相信,我可以把这些碎片拼凑起来。
谢谢,
v923z
您正在寻找滚动窗口的get_vadjustment 方法。
例如,如果您将 button_press_event 绑定到滚动窗口:
def button_press_event(self, widget, event):
v_scroll_pos = widget.get_vadjustment().get_value()
print "y pos + scroll pos = %f" % (event.y + v_scroll_pos,)
return gtk.TRUE
将打印 y 位置 + 它在 y 方向上滚动的量。