如何为Kivy中的窗口移动事件编写处理程序?
我想写一个处理窗口移动事件的函数,适用于Windows和Linux系统。
我需要这个功能来重置我的应用程序的行为,因为当我拖动窗口时,所有的Clock.schedules
都会停止或暂停,而在放开窗口后,动画和计划就不能正常开始了。窗口移动时出现的问题倒没关系,但之后应用程序应该能正确重启。
这段代码是处理窗口大小变化的:
class DemoApp(App):
def build(self):
def win_cb(window, width, height):
print 'resizing'
Window.bind(on_resize=win_cb)
有没有类似于on_move
的东西?我在API文档中没有看到类似的内容。
1 个回答
1
不,Kivy没有办法直接获取当前窗口的位置。虽然通过直接使用窗口的后端(比如pygame)可能可以做到,但这样做不太适合不同平台使用,而且有点像是绕过正常方式的黑科技。
不过,你这里肯定还有其他问题。我的动画和时钟调度在移动和调整窗口大小时都运行得很好。你可能需要再发一个问题,问问为什么你的调度会出问题,因为这不是正常的情况。