TETRIS

_images/titrevideo.PNG_images/blanc1.png
html5 background video by EasyHtml5Video.com v3.9.1
Objectif du tutoriel :
OBJECTIF

Construire

  • Afficher une fenêtre, avec un titre et une icône.
  • Déterminer la dimension de la fenêtre pour qu’elle puisse afficher des textes et des images.
  • Inclure dans la fenêtre un canevas (Canvas) pour afficher des images et des mots qui peuvent se déplacer à l’aide de la souris.
  • Construire des figures et les déplacer dans une grille
  • Utiliser les tableaux et les listes pour stocker des données.

Pour télécharger les images

Lien pour télécharger imagestypes1

.

_images/pento000.PNG
Module image:

On utilise l’interface graphique tkinter,

Mode d’emploi :

Il faut créer un dossier pour stocker les images.

Le nom des images doit être i0.png, i1.png, i2.png, i3.png,…,

Il faut créer un fichier image.py dans le dossier qui va contenir les fonctions qui concernent les images.

Créer une liste d’images :

Module image.py

_images/moimage.PNG

Ce module utilise les listes (items= [] ligne 15) cela permet d’utiliser toutes les images dans toutes les fonctions du programme.

Remarque : pour pouvoir intégrer facilement les images dans une liste, il faut leur donner un nom qui contient un nombre entier , cela permet à une boucle for in range(..,..) : de remplir correctement la liste.

Utilisation du module tkinter

Charger le module : Pour utiliser le module tkinter, il faut d’abord choisir un mode d’importation :

from tkinter import* . charge le module tkinter.

Module fenetre:
Ouvrir une fenêtre :

Module fenetre.py

_images/moifenetre.PNG

Tk() : permet de désigner un premier objet (une fenêtre) duquel les autres dépendront.

Le nom (arbitrairement choisi) est déterminé par fenetre.

fenetre.title(titre ») : affiche le titre (chaîne de caractères) dans la fenêtre. (ligne 9)

fenetre.iconbitmap(icone): affiche un logo stocké dans un fichier image avec l’extension « .ico » (dans le même dossier que le fichier python qui utilise l’icône). (ligne 10)

fenetre.geometry(taille) : précise une taille fixe de fenêtre. Dans le cas contraire, les dimensions de la fenêtre s’adaptent à son contenu. (Exemple :taille= ‘500x300’ , fabrique une fenêtre de 500 pixels de largeur et de 300 pixels de hauteur)

fenetre.mainloop() : lancera le gestionnaire d’événements. L’essentiel du script (sauf fonctions ou classes) doit se situer entre les deux, cela peut être considéré comme une boucle.

Dans la suite la fenêtre : fenetre=Tk()

fenetre.resizable(width=False,height=False)

Empêche le redimensionnement de la fenêtre.

Le Canvas :
Créer un canevas :

Pour afficher des images ou pour déplacer des objets sur une fenêtre on peut utiliser un canevas (Canvas)

_images/canvas.PNG

Déclaration :

can=Canvas(fenetre,width=largeur,height=hauteur,bg=couleur)

Affichage : La méthode grid est disponible sur le livre

can.grid(row=0,column=0,rowspan=3,columnspan=4)

Le rectangle canevas (can) va occuper 3 lignes et 4 colonnes à partir de la ligne 0 (row =0)

et de la colonne 0 (column = 0).

_images/grid.PNG
Les fonctions :

Le code du programme

_images/pento001.PNG

Les fonctions puzzle rectangle et souris_clic

_images/pento002.PNG _images/pento000.PNG

Les fonctions deplace nombre_tag et coor_tab

_images/pento003.PNG

La fonction souris_releve

_images/pento004.PNG

Les fonctions une_lettre et redessine

_images/pento005.PNG

La fonctions lettre_

_images/pento006.PNG _images/pento007.PNG _images/pento008.PNG

Les fonctions remplir quitter menu et tableau et redessine

_images/pento009.PNG