Seite 1 von 1

Problem mit Tasten

Verfasst: Mittwoch 2. Juni 2010, 09:44
von Weltbesiedler

Code: Alles auswählen

import pygame, sys

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

x = 100
y = 100

color =((255 , 0 + x, 0)) 


pygame.display.flip() 


while True: 
     for event in pygame.event.get(): 
       if event.type == pygame.QUIT:
            sys.exit()
       elif event.type == pygame.KEYDOWN:
            if event.key == pygame.K_a:
                 startpos = ((200 + x, 100))
                 endpos = ((200 + y, 150))
                 x = x + 5                   
                 y = y + 1.1  
                 pygame.draw.line(screen, color, startpos, endpos, 1) 
                 pygame.display.update()

Wie kann ich es hier machen, dass, wenn ich auf "a" drauf bleibe, das erhöhen von "x" vorgesetzt wird?

P.S.

Wie funktioniert der Befehl "FULLSCREEN"?

Wie kann ich machen, das der ganze Bildschirm ausgefüllt wird?

Re: Problem mit Tasten

Verfasst: Mittwoch 2. Juni 2010, 11:37
von Hyperion
Weltbesiedler hat geschrieben: Wie kann ich es hier machen, dass, wenn ich auf "a" drauf bleibe, das erhöhen von "x" vorgesetzt wird?
Was meinst Du mit "drauf bleiben"?
P.S.

Wie funktioniert der Befehl "FULLSCREEN"?

Wie kann ich machen, das der ganze Bildschirm ausgefüllt wird?
Für andere Fragen eher einen eigenen Thread.

Zudem: Wir haben ein Subforum für pygame ;-)

Und: Es gibt Code-Tags speziell für Python.

Re: Problem mit Tasten

Verfasst: Mittwoch 2. Juni 2010, 11:40
von /me
Weltbesiedler hat geschrieben: Wie funktioniert der Befehl "FULLSCREEN"?

Wie kann ich machen, das der ganze Bildschirm ausgefüllt wird?
Ich möchte mal aus einem deiner eigenen Postings zitieren "verarschen kann ich mich auch selber. ich will von euch ein Beispiel haben!". Genau diese Erwartungshaltung legst du schon wieder an den Tag.

Fang doch bitte endlich mal damit an die Dokumentation zu lesen und mitgelieferten Beispielcode durchzuarbeiten. Ich habe gerade keine Minute gebraucht um die Lösung dieser Fullscreen-Frage in der Dokumentation zu finden. Meine Erwartungshaltung geht schon dahin, dass man sich als Fragesteller wenigstens bemühen sollte eine Lösung zu finden, aber da dir die Frage anscheinend nicht einmal wichtig genug war, dass du sie im passenden Unterforum gestellt hättest, kann ich bei dir wohl nicht von echtem Interesse ausgehen. Meine Motivation für Hilfe sieht folglich entsprechend mau aus.

Re: Problem mit Tasten

Verfasst: Sonntag 6. Juni 2010, 23:23
von jonas

Code: Alles auswählen

pygame.key.set_repeat(1, 30)
Vllt. hilft dir das?
Lg, Jonas :wink:

Re: Problem mit Tasten

Verfasst: Samstag 19. Juni 2010, 12:57
von Weltbesiedler
@ jonas: Nein, sry aber das funkioniert nicht.

@Hyperion
Was meinst Du mit "drauf bleiben"?
Ich meine, wenn ich z.B. programmiert habe, dass, wenn ich die Pfeiltaste nach oben drücke, ein Kreis gezeichnet wird.

Wenn ich dann nochmal draufdrücke zeichnet er einen Kreis mit veränderten Radius.

Leider muss ich dann immer wieder von der Taste heruntergehen und wieder drauf klicken, damit wieder ein Kreis gezeichnet wird.

Ich möchte es nun so haben, dass, wenn ich auf der Pfeiltaste nach oben drauf bleibe, automatisch ein Kreis immer und immer wieder gezeichnet wird, ohne das ich von der Pfeiltaste herunter gehen muss.

Re: Problem mit Tasten

Verfasst: Sonntag 20. Juni 2010, 17:55
von dannemann
Jo,

Hab mal dein Programm hergenommen und mal etwas umgeändert:

Code: Alles auswählen

import pygame, sys
from pygame import *
pygame.init()

#Aufloesung musst du noch an deinem Bildschirm anpassen
#so funktioniert FULLSCREEN
screen = pygame.display.set_mode ([800, 600],FULLSCREEN)
screen.fill ([255, 255, 255])

def main():
     a=0
     x = 100
     y = 100
     color =((255 , 0 + x, 0))
     
     while True:
          #screen.fill ([255, 255, 255])
          for event in pygame.event.get():
            if event.type == pygame.QUIT:
                 sys.exit()
            elif event.type == pygame.KEYDOWN:
                 if event.key == pygame.K_ESCAPE:
                      sys.exit()
                 if event.key == pygame.K_a:
                      a=1
            elif event.type == pygame.KEYUP:
                 if event.key == pygame.K_a:
                      a=0
          if a:#Verwende Variablen
            x = x + 5                  
            y = y + 1.1

          startpos = ((200 + x, 100))
          endpos = ((200 + y, 150))

          pygame.draw.line(screen, color, startpos, endpos, 1)

          pygame.display.update()

if __name__ == "__main__":
    main()
Hoffe ich konnte dir weiterhelfen,

Danne