Python pyglet on_mouse_press

Ich versuche, eine einfache GUI mit Pyglet zu machen.

Hier ist mein Code:

button_texture = pyglet.image.load('button.png') button = pyglet.sprite.Sprite(button_texture, x=135, y=window.height-65) def on_mouse_press(x, y, button, modifiers): if x > button and x < (button + button_texture.width): if y > button and y < (button + button_texture.height): run_program() 

Bildbeschreibung hier eingeben

Das Problem

Die "button.png" wird als rotes Feld mit "Klick" angezeigt. Und soll run_program () starten. Aber derzeit ist das Gelb in der Unterseite links der Ort, an den ich klicken muss, um run_program () zu starten.

One Solution collect form web for “Python pyglet on_mouse_press”

Sie vergleichen die Schaltfläche (der Schlüsselcode) mit den X / Y-Koordinaten. Dies geschieht, weil die Funktionsparameter- button Ihre globale Variable schattiert. Außerdem sollten Sie die Tasten x , y , width und height .

 button_texture = pyglet.image.load('button.png') button_sprite = pyglet.sprite.Sprite(button_texture, x=135, y=window.height-65) def on_mouse_press(x, y, button, modifiers): if x > button_sprite.x and x < (button_sprite.x + button_sprite.width): if y > button_sprite.y and y < (button_sprite.y + button_sprite.height): run_program() 

Ich habe Ihren globalen Variablenknopf mit button_sprite , um den button_sprite zu vermeiden.

  • Daten von OpenGL erhalten glReadPixels (mit Pyglet)
  • Python pyglet und opengl
  • Pyglet Image Rendering
  • Drehen Sie 3D-Bildchargen, um sie zu machen 2D
  • Python pyglet AVBin - Wie installiere ich AVBin
  • Pyglet in Mac installieren
  • Wie kann man ein numpy Array mit Pyglet anzeigen?
  • Pyglet / avbin vermisst Anfang und Ende des Videos
  • Pyglet läuft nicht richtig auf AMD HD4250
  • Pyglet wird nach dem Spielen mp3 nicht aufhören
  • Putpixel mit pyglet
  • Python ist die beste Programmiersprache der Welt.