Python - Drawing design using arrow keys in PyGame - GeeksforGeeks

22 Apr, 2020
Pygame is a cross-platform set of Python modules designed for writing video games. It includes computer graphics and sound libraries designed to be used with the Python programming language. Now, it’s up to the imagination or necessity of developer, what type of game he/she wants to develop using this toolkit.
In this article we will see how we can make design in PyGame with help of keys such that design i.e marker moves horizontally when pressing the right arrow key or left arrow key on the keyboard and it moves vertically when pressing up arrow key or down arrow key. We can do this by making a spot(marker) on the respective co-ordinates, which gets changes with the help of keys.
Change in Co-ordinates of marker for respective keys pressed :

Left arrow key: Decrement in x co-ordinate
Right arrow key: Increment in x co-ordinate
Up arrow key: Decrement in y co-ordinate
Down arrow key: Increment in y co-ordinate

Below is the implementation –
# import pygame module in this programimport pygame  # activate the pygame library .   # initiate pygame and give permission   # to use pygame's functionality.   pygame.init()  # create the display surface object   # of specific dimension..e(500, 500).   win = pygame.display.set_mode((500, 500))  # set the pygame window name  pygame.display.set_caption("Moving rectangle")  # marker current co-ordinates  x = 200y = 200  # dimensions of the marker width = 10height = 10  # velocity / speed of movement vel = 10  # Indicates pygame is running run = True  # infinite loop  while run:    # creates time delay of 10ms      pygame.time.delay(10)      # iterate over the list of Event objects       # that was returned by pygame.event.get() method.       for event in pygame.event.get():          # if event object type is QUIT           # then quitting the pygame           # and program both.           if event.type == pygame.QUIT:            # it will make exit the while loop            run = False    # stores keys pressed      keys = pygame.key.get_pressed()      # if left arrow key is pressed     if keys[pygame.K_LEFT] and x > 0:        # decrement in x co-ordinate        x -= vel          # if left arrow key is pressed    if keys[pygame.K_RIGHT] and x < 500 - width:        # increment in x co-ordinate        x += vel          # if left arrow key is pressed    if keys[pygame.K_UP] and y > 0:        # decrement in y co-ordinate        y -= vel          # if left arrow key is pressed    if keys[pygame.K_DOWN] and y < 500 - height:        # increment in y co-ordinate         y += vel        # drawing spot on screen which is rectangle here      pygame.draw.rect(win, (255, 0, 0), (x, y, width, height))      # it refreshes the window     pygame.display.update()  # closes the pygame window  pygame.quit() 
Output :
Python-PyGame
Python
Writing code in comment?
Please use ide.geeksforgeeks.org,
generate link and share the link here.
How to Install PIP on Windows ?
Check if element exists in list in Python
How To Convert Python Dictionary To JSON?
Python Classes and Objects
How to drop one or multiple columns in Pandas Dataframe
Defaultdict in Python
Python | Get unique values from a list
Python | os.path.join() method
Create a directory in Python
Python | Pandas dataframe.groupby()