Grundlegendes zu Pygame / Events u.a.
Verfasst: Montag 4. Dezember 2006, 11:51
Hallo!
Ich hätte een paar Fragen (bei deren Formulierung ich noch Schwierigkeiten habe) zu Pygame und hoffe jetzt einfach mal, dass jemand etwas Klarheit in die Sache bringen kann.
Was habe ich bisher?
Nun, ich schaffe es mal, ein Fenster zu erstellen und mittels dem "Try and Error"-Prinzip kämpfe ich mich nun mit den Dingen ab, dich haben will.
Wie dem Code zu entnehmen ist, kann ich die Keyboard-Events mittlerweile abfragen.
Auch bekomme ich Rückmeldungen, wenn ein Mousebutton gedrückt würde.
Aber: ich bekomme nur, dass ein Button gedrückt wurde und nicht welcher!
Gibt es, wie für die KEYS eine Kontante, die etwa MOUSEBUTTON_LEFT oder so heißt?
Weiter geht's.
Im Code habe ich mir ein Bild geladen (klar, ich könnte das auch mit Draw machen, wollte ich aber net) und nun:
Wie bewege ich das Teil??
Ich habe mich ja schon an den diversen Tutorials (Chimp, ...) versucht, aber um ehrlich zu sein, sind die teilweise ganz schön undurchsichtig für einen Lernenden.
Danke.
EDIT:
Ach ja, der bisherige Code:
Ich hätte een paar Fragen (bei deren Formulierung ich noch Schwierigkeiten habe) zu Pygame und hoffe jetzt einfach mal, dass jemand etwas Klarheit in die Sache bringen kann.
Was habe ich bisher?
Nun, ich schaffe es mal, ein Fenster zu erstellen und mittels dem "Try and Error"-Prinzip kämpfe ich mich nun mit den Dingen ab, dich haben will.
Wie dem Code zu entnehmen ist, kann ich die Keyboard-Events mittlerweile abfragen.
Auch bekomme ich Rückmeldungen, wenn ein Mousebutton gedrückt würde.
Aber: ich bekomme nur, dass ein Button gedrückt wurde und nicht welcher!
Gibt es, wie für die KEYS eine Kontante, die etwa MOUSEBUTTON_LEFT oder so heißt?
Weiter geht's.
Im Code habe ich mir ein Bild geladen (klar, ich könnte das auch mit Draw machen, wollte ich aber net) und nun:
Wie bewege ich das Teil??
Ich habe mich ja schon an den diversen Tutorials (Chimp, ...) versucht, aber um ehrlich zu sein, sind die teilweise ganz schön undurchsichtig für einen Lernenden.
Danke.
EDIT:
Ach ja, der bisherige Code:
Code: Alles auswählen
#! C:\python24\python.exe
#
#
# Datum: 04-12-06
#
# by C4S3
#
# Name: pgNEW.py
#
# =======================
# Meine Odysse mit Pygame
# =======================
import os, sys
import pygame
from pygame.locals import *
size = width, height = 640, 480
pygame.init()
screen = pygame.display.set_mode(size)
pygame.display.set_caption("Pygame Display Test by C4S3")
pygame.display.get_surface()
bild = os.path.join("data", "bild.bmp")
bild_obj = pygame.image.load(bild)
screen.blit(bild_obj, (0,0))
pygame.display.flip()
def input(events):
"""Events abfragen
Dies ist der EVENTLOOP, bzw
die FUNKTION des EVENTLOOPS.
HIER WERDEN ALLE EVENTS ABGEFRAGT
Die Funktion wird im "Mainloop" abgefragt.
Inhalte sind Mousebuttons und Keyboardeingaben,
sowie das Schliessen des Fensters."""
for event in events:
if event.type == QUIT:
sys.exit(0)
elif event.type == KEYDOWN:
"""hier werden alle im Spiel verwendeten Tasten
aufgelistet. Jede, die vorkommt, muss auch hier
aufgeschrieben werden."""
if event.key == pygame.K_DOWN:
print "Down"
elif event.key == pygame.K_UP:
print "Up"
elif event.key == pygame.K_a:
print "a"
elif event.key == pygame.K_ESCAPE: # Close window, when "ESCAPE" is pressed!
sys.exit(0)
elif event.type == MOUSEBUTTONDOWN:
print event
# ??? --> <Event(5-MouseButtonDown {'button': 1, 'pos': (248, 204)})>
# Evenso: wie krieg ich raus, welcher?
# Mainloop
while True:
input(pygame.event.get())