小编iko*_*lim的帖子

5
推荐指数
1
解决办法
5717
查看次数

Kivy - MotionEvent: on_mouse_pos

kivy 是否支持在 mouse_pos 更改时触发的 MouseEvent 无需按下鼠标按钮?

我在文档中发现:

def on_motion(self, etype, motionevent):
    # will receive all motion events.
    pass

Window.bind(on_motion=on_motion)
Run Code Online (Sandbox Code Playgroud)

您还可以通过观察 mouse_pos 来监听鼠标位置的变化。

但是我无法实现它。我设法绑定它并添加到 on_motion 函数 'print('Hello world')' 但它仅由按下类型事件触发。

提前致谢

python mouse events kivy

2
推荐指数
1
解决办法
1623
查看次数

如何使用 screenmanager 小部件在 kivy 中添加操作栏?

我正在尝试在项目的第一个屏幕的顶部添加一个操作栏。我尝试使用screenmanager小部件并发送操作栏,因为它的子项喜欢如何管理/获取两个屏幕。起初,我尝试在第一个屏幕的 root.widget 中添加操作栏代码,但他们将此类显示为无效类。

两者如何添加呢?即使我添加了,我也无法从上到下显示按钮orientation : 'vertical'

    import kivy
    kivy.require('1.10.1')

    from kivy.app import App
    from kivy.uix.button import Button
    from kivy.uix.boxlayout import BoxLayout
    from kivy.lang import Builder
    from kivy.uix.gridlayout import GridLayout

    from kivy.uix.screenmanager import ScreenManager,Screen,FadeTransition

    class SomeLayout_GridLayout(Screen):
        pass
    class FirstScreen(Screen):
        pass
    class SecondScreen(Screen):
        pass
    class ScreenManager(ScreenManager):
        pass

    root_widget = Builder.load_string('''
      ScreenManager:
        FirstScreen:
        SecondScreen:
        SomeLayout_GridLayout:
     <FirstScreen>:
        name: 'first'
        <SomeLayout_GridLayout>:
        cols: 1
        rows: 2
        row_force_default: True
        rows_minimum: {0: ActionBar.height, 1: self.height - ActionBar.height}
        SomeMenu_ActionBar:
            id: ActionBar

        <SomeMenu_ActionBar@ActionBar>:
        ActionView:
            id: ActionView
            ActionGroup: …
Run Code Online (Sandbox Code Playgroud)

python kivy

0
推荐指数
1
解决办法
2662
查看次数

标签 统计

kivy ×3

python ×3

events ×1

mouse ×1

python-3.x ×1