Hi,
Gibt es in Python oder Pygame eine Funktion um erst nach einer bestimmten Zeit eine Aktion auszuführen. Der Hintergrund ist folgender:
Ich wechsle jetzt zwischen den Modis und lass einen entsprechenden Text ausblenden. Ich will diesen aber per Funktion (screen.fill) nach ca. 3 Sekunden wider verschwinden lassen. Ich kenne das von anderen Sprachen (AHK), fidne aber nix passendes für Python. Bzw. hier steht was, aber er nimmt meine Argumente nicht an.
http://www.pygame.org/docs/ref/time.htm ... .set_timer
MFG,
WOLNA
Zeitversetzte Aktionen?
wie ich schon schrieb: fill.screen(0,0,0)
Text wird eingeblendet > nach ca. 3 Sekunden wird der Bildschirm schwarz gefüllt.
Folge, der Text verschwindet.
MFG
Im Grunde sehr einfach, aber irgendwie fehlen mir bei pygame immer Funktionen. (bzw. sidn nur unter Umwegen realisierbar) Z.b. die Text Limitierung (nur ein Zeilen Text) ist auch so eine Sache an pygame...
Text wird eingeblendet > nach ca. 3 Sekunden wird der Bildschirm schwarz gefüllt.
Folge, der Text verschwindet.
Code: Alles auswählen
mod = font2.render("FULLSCREEN MODE", 1, (255, 0, 0))
screen.blit(mod, (0, 0))
fullscreen = 1
NACH 3 SEKUNDEN
#screen.fill((0,0,0))
MFG
Im Grunde sehr einfach, aber irgendwie fehlen mir bei pygame immer Funktionen. (bzw. sidn nur unter Umwegen realisierbar) Z.b. die Text Limitierung (nur ein Zeilen Text) ist auch so eine Sache an pygame...
... und Du solltest gelernt haben, dass dieses Forum eine Reihe Unterforen beschäftigt - so auch eines für Sonstige (Pygame, PyOpenGL, ...).
werde ich in Zukunft beachten. Hab es hier gepsotet, weil ich falls nötig auch eine alternative in PYTHON ohne PYGAME suche.Masaru hat geschrieben:... und Du solltest gelernt haben, dass dieses Forum eine Reihe Unterforen beschäftigt - so auch eines für Sonstige (Pygame, PyOpenGL, ...).
@ /me
TypeError, die ID muss eine Zahl(integer) sein.
Code: Alles auswählen
eventID = screen.fill((0,0,0))
pygame.time.set_timer(eventID, 1000)
threading.Timer, ist ein Timer ohne Pygame
the more they change the more they stay the same
- cofi
- Python-Forum Veteran
- Beiträge: 4432
- Registriert: Sonntag 30. März 2008, 04:16
- Wohnort: RGFybXN0YWR0
Code: Alles auswählen
import pygame
from pygame.locals import *
def timerFunc():
print "Timer CallBack"
pygame.init()
pygame.time.set_timer(USEREVENT+1, 100)
while 1:
for event in pygame.event.get():
if event.type == USEREVENT+1:
timerFunc() #calling the function wheever we get timer event.
if event.type == QUIT:
break
Fuer dieses Problem stellt die Sprache keine Loesung bereit, weil es ein Problem mit dem Toolkit ist, dass du hast.
Nur bloed, dass das ein anderer Thread ist Ich bezweifle, dass Pygame threadsafe ist.Dav1d hat geschrieben:threading.Timer, ist ein Timer ohne Pygame
Michael Markert ❖ PEP 8 Übersetzung ❖ Tutorial Übersetzung (3.x) ⇒ Online-Version (Python 3.3) ❖ Deutscher Python-Insider ❖ Projekte