1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89
|
import pygame,sys
import time
from pygame.locals import *
pygame.display.init()
ecran = pygame.display.set_mode((1920, 1080)) #Crée la fenêtre de tracé
ecran.fill((127,127,127))
bg = pygame.image.load("images/plan_1.png") #charge une image à partir d'un fichier
bg= pygame.transform.scale(bg, (1280, 720))
ecran.blit(bg, (0,0)) #Colle l'image en haut à gauche de la fenêtre de tracé (ici, l'ecran)
pygame.display.flip() #L'affichage devient effectif : l'image est rendue visible.
buttons=[]
# Create Buttons
buttons.append({ "image" : pygame.image.load("images/1.png"), "position" : (1350, 25)})
buttons.append({ "image" : pygame.image.load("images/2.png"), "position" : (1540, 25)})
buttons.append({ "image" : pygame.image.load("images/3.png"), "position" : (1730, 25)})
buttons.append({ "image" : pygame.image.load("images/4.png"), "position" : (1350, 215)})
buttons.append({ "image" : pygame.image.load("images/5.png"), "position" : (1540, 215)})
buttons.append({ "image" : pygame.image.load("images/6.png"), "position" : (1730,215)})
buttons.append({ "image" : pygame.image.load("images/7.png"), "position" : (1350, 405)})
buttons.append({ "image" : pygame.image.load("images/8.png"), "position" : (1540, 405)})
buttons.append({ "image" : pygame.image.load("images/9.png"), "position" : (1730, 405)})
buttons.append({ "image" : pygame.image.load("images/cancel.png"), "position" : (1350, 595)})
buttons.append({ "image" : pygame.image.load("images/0.png"), "position" : (1540, 595)})
buttons.append({ "image" : pygame.image.load("images/ok.png"), "position" : (1730, 595)})
def drawButtons():
for button in buttons:
ecran.blit(button["image"], button["position"])
def event_mouse():
for button in buttons:
but_img = button['image']
buttonSize = button['image'].get_rect().size
buttonPosition = button['position']
return but_img
def click_button(but_img):
nbre="" # j'ai mis ceci car UnboundLocalError: local variable 'nbre' referenced before assignment
if event.type == pygame.MOUSEBUTTONDOWN:
x, y = event.pos
if but_img.get_rect(topleft=(1350, 25)).collidepoint(x,y):
nbre="1"
if but_img.get_rect(topleft=(1540, 25)).collidepoint(x,y):
nbre="2"
if but_img.get_rect(topleft=(1730, 25)).collidepoint(x,y):
nbre="3"
if but_img.get_rect(topleft=(1350, 215)).collidepoint(x,y):
nbre="4"
if but_img.get_rect(topleft=(1540, 215)).collidepoint(x,y):
nbre="5"
if but_img.get_rect(topleft=(1730, 215)).collidepoint(x,y):
nbre="6"
if but_img.get_rect(topleft=(1350, 405)).collidepoint(x,y):
nbre="7"
if but_img.get_rect(topleft=(1540, 405)).collidepoint(x,y):
nbre="8"
if but_img.get_rect(topleft=(1730, 405)).collidepoint(x,y):
nbre="9"
if but_img.get_rect(topleft=(1350, 595)).collidepoint(x,y):
nbre="cancel"
if but_img.get_rect(topleft=(1540, 595)).collidepoint(x,y):
nbre="0"
if but_img.get_rect(topleft=(1730, 595)).collidepoint(x,y):
nbre="ok"
print(nbre)
loop=True
while loop: #Boucle d'événements
time.sleep(0.1)
for event in pygame.event.get(): #parcours de la liste des événements
if(event.type==pygame.QUIT or ( event.type==pygame.KEYDOWN and event.key==pygame.K_ESCAPE)): #interrompt la boucle si nécessaire
loop = False
drawButtons()
click_button(event_mouse())
pygame.display.update()
pygame.quit()
loop = True |
Partager