Seite 1 von 1

pynput.mouse.listener Probleme die Werte herauszubekommen

Verfasst: Mittwoch 22. Mai 2019, 15:56
von soltana
Hallo ich habe folgenden Code:

Code: Alles auswählen

from pynput import mouse

class MouseListener:
    def __init__(self):
        self.pressed_x = -1
        self.pressed_y = -1
        self.released_x = -1
        self.release_y = -1

    def on_click( x, y, button, pressed):
        if pressed:
            print("gedrueckt", x, y)
            #self.pressed_x = x
            #self.pressed_y = y
        elif pressed == 0:
            print("nicht gedrueckt", x, y)
            #self.released_x = x
            #self.released_y = y
            return False

    def run(self):
        with mouse.Listener( on_move = None,
                             on_click = self.on_click,
                             on_scroll = None) as listener:
            listener.join()
            
Wenn ich nun run() aufrufe bekomme ich die Positionen des Mausclicks angezeigt. Wie bekomme ich diese Werte aber in eine Klassenvariable geschrieben?

Re: pynput.mouse.listener Probleme die Werte herauszubekommen

Verfasst: Mittwoch 22. Mai 2019, 16:01
von __deets__
Du hast self als erstes argument vergessen in deinem on_click.

Re: pynput.mouse.listener Probleme die Werte herauszubekommen

Verfasst: Mittwoch 22. Mai 2019, 16:12
von soltana
Oh man herzlich willkommen in python.

Ich wollte schon schreiben, dass ich dies schon mal versucht habe und nur Fehlermeldungen bekommen habe. Ich habe es nochmal nochmal gemacht, damit ich die Fehlermeldungen bekomme aber jetzt klappt es. Da waren die Fehlermeldungen wohl was anderes...

Erstmal vielen Dank.

Gibt es noch einen geschickteren Weg an die Werte von x und y zu kommen? Mir ist nur dieser Weg eingefallen, dass ich alles in einen Klasse packe und dann in die Klassenvariablen schreibe.

Re: pynput.mouse.listener Probleme die Werte herauszubekommen

Verfasst: Mittwoch 22. Mai 2019, 17:05
von __deets__
Soweit ich sehen kann ist das erstmal ok, aber ob es Sinn in einem größeren Kontext hat kann man so nicht sagen.

Re: pynput.mouse.listener Probleme die Werte herauszubekommen

Verfasst: Mittwoch 22. Mai 2019, 17:15
von __blackjack__
@soltana: Vielleicht noch als Anmerkung: Das sind keine Klassenvariablen sondern Instanzvariablen.