3

現在、Kivy で GUI をコーディングしています。マウスでホバーしたときに強調表示されるように、ToggleButton の動作を変更する必要があります。これまでの私のコードは次のとおりです。

class FilterToggle(ToggleButton):

    def __init__(self, **kwargs):

        Window.bind(mouse_pos=self.on_mouse_pos)
        super(FilterToggle, self).__init__(**kwargs)

    def on_mouse_pos(self, *args):
        pos = args[1]
        if self.collide_point(*pos):
            print("I am on the good path!)

ここに私の.kvファイルがあります:

<FilterToggle>:

    text_size: self.width - 20, None
    valign: 'middle'
    halign: 'left'
    markup: True
    .
    .
    .
    FilterToggle:
        text: "This is just to illustrate"

on_mouse_pos() 関数は、self.collide_point(*pos) が常に "False" を返すため、何も出力しません。self.pos がすべての FilterToggle ウィジェットの座標を提供することがわかったので、明らかにコードに問題があります。

Python初心者を助けてくれてありがとう!

4

0 に答える 0