2016-12-15 6 views

答えて

0

受信したマウスの位置をon_scroll_moveに保存しておき、以前に保存した値と現在の値を比較して方向を判断できます。

from kivy.app import App 
from kivy.uix.boxlayout import BoxLayout 
from kivy.lang import Builder 


Builder.load_string(''' 
<MyWidget>: 
    ScrollView: 
     on_scroll_start: root.scroll_pos_y = args[1].pos[1] 
     on_scroll_move: root.scroll_direction(args[1].pos[1]) 

     Label: 
      text: 'test' 
      size_hint_y: None 
      height: 1000 
''') 

class MyWidget(BoxLayout): 
    scroll_pos_y = 0 

    def scroll_direction(self, new_scroll_pos_y): 
     if new_scroll_pos_y - self.scroll_pos_y < 0: 
      print('up') 
     else: 
      print('down') 

     self.scroll_pos_y = new_scroll_pos_y 

class MyApp(App): 
    def build(self): 
     return MyWidget() 

if __name__ == '__main__': 
    MyApp().run() 
+0

ありがとうNykakin ...本当に助けになりました。 –

関連する問題