Mein drauf bleiben einer Taste weiter zeichnen

Hier werden alle anderen GUI-Toolkits sowie Spezial-Toolkits wie Spiele-Engines behandelt.
Antworten
Benutzeravatar
Weltbesiedler
User
Beiträge: 103
Registriert: Dienstag 2. Februar 2010, 18:44
Wohnort: Bayern

Code: Alles auswählen

import pygame, sys, time, random
pygame.init()
uhr = pygame.time.Clock()

screen = pygame.display.set_mode ([1900, 1000])
screen.fill ([255, 255, 255])

z = 400

colorx = random.randint(1, 255)
colory = random.randint(1, 255)
colorz = random.randint(1, 255)


x = random.randint(1, 100)
y = random.randint(1, 100)

r = random.randint(10, 30)

x2 = random.randint(10, 30)
y2 = random.randint(10, 30)

x3 = random.randint(10, 30)
y3 = random.randint(10, 30)

x4 = random.randint(10, 30)
y4 = random.randint(10, 30)

color  =((colorx, colory, colorz))


pygame.display.flip() 


while True: 
     for event in pygame.event.get(): 
       if event.type == pygame.QUIT:
            sys.exit()
       if event.type == pygame.KEYDOWN:
            if event.key == pygame.K_UP:
                 startpos = ((200 + x, 100 + y))
                 endpos = ((200 + y, 150 + x))
                 x = x + 3
                 y = y + 6
                 pygame.draw.line(screen, color, startpos, endpos, 1)
       if event.type == pygame.KEYUP:
            if event.key == pygame.K_a:
                 startpos = ((2 + x,1 + y ))
                 endpos = ((2 + y, 1 + x))
                 y = y + 2
                 x = x + 4
                 pygame.draw.line(screen, color, startpos, endpos, 1)
       if event.type == pygame.KEYDOWN:
            if event.key == pygame.K_l:
                startpos2 = ((2 + x , 3 + y))
                endpos2   = ((z + y , 4 + z))
                z = z + 4
                x = x + 2
                y = y + 3
                pygame.draw.line(screen, color, startpos2, endpos2, 1)
       if event.type == pygame.KEYDOWN:
            if event.key == pygame.K_DOWN:
                r = r + 2
                radius = r
                pos    = ((x, y))
                pygame.draw.circle(screen, color, pos, radius, 1)
       if event.type == pygame.KEYDOWN:
            if event.type == pygame.K_p:
                point1 = ((x2, y2))
                point2 = ((x3, y3))
                point3 = ((x4, y4))
                pygame.draw.polygon(screen, color, point1, point2, point3, 1)
                
       pygame.display.update()
     uhr.tick(10)
Wie kann ich hier machen, dass wenn ich auf einer Taste drauf bleibe, weitergezeichnet wird?
Benutzeravatar
snafu
User
Beiträge: 6740
Registriert: Donnerstag 21. Februar 2008, 17:31
Wohnort: Gelsenkirchen

Du hättest dir durchaus die Mühe für zusätzliche Erklärungen und Kommentare im Code machen dürfen. Schließlich erwartest du sicher auch, dass sich jemand Mühe bei der Beantwortung gibt. Code hinklatschen mit einem "macht ma" demotiviert die Helfenden möglicherweise ein bißchen.
Benutzeravatar
Hyperion
Moderator
Beiträge: 7478
Registriert: Freitag 4. August 2006, 14:56
Wohnort: Hamburg
Kontaktdaten:

Und wieso postet der OP immer wieder ins falsche Forum? Wieso lernt er es nicht, Python-Code-Tags zu verwenden? Irgend wann reicht es...

Und zudem gibt es doch diesen Thread:
http://python-forum.de/viewtopic.php?f=4&t=23227

Da wird doch exakt der gleiche Quellcode beschrieben - bis auf zwei klitze kleine Änderungen... :roll:
encoding_kapiert = all(verstehen(lesen(info)) for info in (Leonidas Folien, Blog, Folien & Text inkl. Python3, utf-8 everywhere))
assert encoding_kapiert
Benutzeravatar
Weltbesiedler
User
Beiträge: 103
Registriert: Dienstag 2. Februar 2010, 18:44
Wohnort: Bayern

wenn ihr den Bericht immer wieder verschiebt und ich weis nicht wohin, dann stelle ich halt die frage nochmal
Benutzeravatar
Hyperion
Moderator
Beiträge: 7478
Registriert: Freitag 4. August 2006, 14:56
Wohnort: Hamburg
Kontaktdaten:

Weltbesiedler hat geschrieben:wenn ihr den Bericht immer wieder verschiebt und ich weis nicht wohin, dann stelle ich halt die frage nochmal
Wird man denn davon nicht per Mail informiert? Zudem sollte die SuFu dann auch weiterhelfen... außerdem würde ich dann nicht einfach den Thread neu eröffnen, sondern einen Admin anschreiben und nachfragen - schließlich wird ein solcher (oder auch Mod ;-) ) damit ja augenscheinlich etwas zu tun gehabt haben!

Und man sollte doch schon so viel Transferleitsung aufbringen darauf zu kommen, dass sich die Frage wohl mit pygame befasst und daher evtl. ins pygame-Forum verschoben wurde...
encoding_kapiert = all(verstehen(lesen(info)) for info in (Leonidas Folien, Blog, Folien & Text inkl. Python3, utf-8 everywhere))
assert encoding_kapiert
Benutzeravatar
Weltbesiedler
User
Beiträge: 103
Registriert: Dienstag 2. Februar 2010, 18:44
Wohnort: Bayern

Nein! Ich wurde nicht per E-Mail informiert.
Benutzeravatar
Rebecca
User
Beiträge: 1662
Registriert: Freitag 3. Februar 2006, 12:28
Wohnort: DN, Heimat: HB
Kontaktdaten:

Es gibt auch oben rechts in der Ecke den Link "Eigene Beitraege"... :roll:
Offizielles Python-Tutorial (Deutsche Version)

Urheberrecht, Datenschutz, Informationsfreiheit: Piratenpartei
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Weltbesiedler hat geschrieben:wenn ihr den Bericht immer wieder verschiebt und ich weis nicht wohin, dann stelle ich halt die frage nochmal
Also wirst du jetzt auf biegen und brechen die Frage so oft stellen bis sie in "Allgemeine Fragen" beantwortet wurde, weil du nicht ins "Pygame"-Forum schauen magst? Ich kenn angenehmere Arten sich die Zeit zu vertreiben.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
Antworten