MagPI 6 Page 31

De Le French MagPi
Aller à : Navigation, rechercher

Lancez d'abord Leafpad. Tapez le texte de l'encadré de droite et enregistrez le fichier sous le nom "settings.txt" dans le dossier où votre code python sera enregistré.

(Encadré de droite)

screen width:1024
screen height:600
window caption:Titre fondant
text size:100
title 1:Jaseman présente...
title 2:Une production du Python Pit
title 3:Démo de titre fondant

(début de code)

# Import de paramètres
# Par Jaseman - 22 septembre 2012
f = open('settings.txt', 'r') # Ouvre un fichier texte pour y lire des paramètres (r)
settings = [] # Crée une variable de type tableau pour y stocker les paramètres
for line in f: # Boucle pour récupérer chaque ligne du fichier dans le tableau
      settings.append(line)
f.close() # Ferme le fichier
# Cette partie utilise le deux-point (:) pour diviser chaque ligne et définit les variables
screenx=settings[0].split(':'); screeny=settings[1].split(':')
windowcaption=settings[2].split(':'); textsize=settings[3].split(':')
title1=settings[4].split(':'); title2=settings[5].split(':')
title3=settings[6].split(':')
import os,pygame; from pygame.locals import *; pygame.init()
os.environ['SDL_VIDEO_WINDOW_POS'] = 'center'
pygame.display.set_caption(windowcaption[1].strip())
screen=pygame.display.set_mode([int(screenx[1]),int(screeny[1])],0,32)
fadesurf=pygame.Surface((int(screenx[1]),int(screeny[1])))
titlesurf=pygame.Surface((int(screenx[1]),int(screeny[1])))
nexttitle=1;run=1
while run==1:
      # Affiche le titre suivant
      font = pygame.font.Font(None,int(textsize[1]))
      if nexttitle==1:
            text = font.render(title1[1].strip(),True,(255,255,255))
      if nexttitle==2:
            text = font.render(title2[1].strip(),True,(255,255,255))
      if nexttitle==3:
            text = font.render(title3[1].strip(),True,(255,255,255))
      tgr=text.get_rect
      tp=tgr(centerx=screen.get_width()/2,centery=screen.get_height()/2)
      titlesurf.blit(text,tp)
      # Augmente la transparence de fadesurf
      for t in range(255,0,-20):
            fadesurf.set_alpha(t); screen.blit(titlesurf,(0,0))
            screen.blit(fadesurf,(0,0)); pygame.display.update()
      # Diminue la transparence de fadesurf
      for t in range(0,256,20):
            fadesurf.set_alpha(t); screen.blit(titlesurf,(0,0))
            screen.blit(fadesurf,(0,0)); pygame.display.update()
      titlesurf.fill((0,0,0)); screen.blit(fadesurf,(0,0))
      pygame.display.update()
      nexttitle+=1
      if nexttitle>=4: nexttitle=1

(fin de code)

Essayez de modifier les valeurs du fichier "settings.txt" et relancez ensuite le programme python. Grâce à cette méthode, il est possible de changer la façon dont fonctionne le programme sans avoir à modifier le code python lui-même.

Outils personnels
Espaces de noms

Variantes
Actions
Navigation
Boîte à outils