Background label
Résolu
fred13330
Messages postés
8
Statut
Membre
-
fred13330 Messages postés 8 Statut Membre -
fred13330 Messages postés 8 Statut Membre -
Bonjour,
J'aimerais que mes label "Ordinateur" et "Joueur" aient un fond transparent afin d'avoir l'effet marbre partout.
Merci de votre aide
Fred
import tkinter
import random
from tkinter import messagebox
from PIL import Image, ImageTk
# Résultat du tour
def coup(jeu_joueur):
label_pc_jeu["bg"] = "white"
label_joueur_jeu["bg"] = "white"
label_joueur_jeu["text"] = jeu_joueur.title()
jeu_pc_abrege = tirage_pc()
gestion_score(jeu_pc_abrege, jeu_joueur[0])
# Tirage ordi
def tirage_pc():
n = random.randrange(3)
coup_pc = liste_objet[n]
label_pc_jeu["text"] = coup_pc
coup_pc_abrege = coup_pc[0]
return coup_pc_abrege
# gestion du score
def gestion_score(pc, joueur):
global score_pc, score_joueur
resultat = dico_coup[pc + joueur]
score_tour_pc = int(resultat[0])
score_tour_joueur = int(resultat[1])
gestion_couleur_score(score_tour_pc, score_tour_joueur)
score_pc += score_tour_pc
score_joueur += score_tour_joueur
label_pc_score["text"] = score_pc
label_joueur_score["text"] = score_joueur
gestion_tour()
# Gesion des tours
def gestion_tour():
global tour
tour -= 1
label_nb_tour["text"] = tour
if tour <= 1:
label_tour["text"] = "Tour"
if tour == 0:
message = " Score final:\nOrdinateur : {} - Joueur : {}\n Une autre partie".format(score_pc, score_joueur)
fin_partie(message)
# Gestion couleur des score
def gestion_couleur_score(pc, joueur):
if pc > joueur:
label_pc_jeu["bg"] = "green"
elif joueur > pc:
label_joueur_jeu["bg"] = "green"
# Fin de la partie
def fin_partie(message):
choix = tkinter.messagebox.askyesno(title="Fin de la partie", message=message)
if choix:
global score_pc, score_joueur, tour
score_pc = 0
score_joueur = 0
tour = 5
label_pc_score["text"] = 0
label_joueur_score["text"] = "0"
label_pc_jeu.configure(bg="white", text="")
label_joueur_jeu.configure(bg="white", text="")
label_nb_tour["text"] = tour
else:
fenetre.quit()
score_pc = 0
score_joueur = 0
tour = 5
joueur = "Joueur"
liste_objet = ["Pierre", "Ciseau", "Feuille"]
dico_coup = {"PP": (0, 0), "PC": (1, 0), "PF": (0, 1),
"CC": (0, 0), "CF": (1, 0), "CP": (0, 1),
"FF": (0, 0), "FP": (1, 0), "FC": (0, 1)}
# Programme principal
# Création de la fenêtre de jeu
fenetre = tkinter.Tk()
fenetre.geometry("450x400")
fenetre.title("Shifumi")
image = Image.open("marbre.jpg")
resized_image = image.resize((450,400))
photo = ImageTk.PhotoImage(resized_image)
canvas = tkinter.Canvas(fenetre)
canvas.pack(expand=True, fill="both")
canvas.create_image(0, 0, anchor="nw", image=photo)
# Création des labels
label_pc = tkinter.Label(fenetre, text="Ordinateur", bg="SystemButtonFace", width=10)
canvas.create_window(138, 110, window=label_pc)
label_joueur = tkinter.Label(fenetre, text="Joueur", bg="SystemButtonFace", width=10)
canvas.create_window(338, 110, window=label_joueur)
label_pc_jeu = tkinter.Label(fenetre, text="", bg="white", width=10)
label_pc_jeu.place(x=100, y=120)
label_joueur_jeu = tkinter.Label(fenetre, text="", bg="white", width=10)
label_joueur_jeu.place(x=300, y=120)
label_pc_score = tkinter.Label(fenetre, text="0", bg="white", width=10)
label_pc_score.place(x=100, y=160)
label_joueur_score = tkinter.Label(fenetre, text="0", bg="white", width=10)
label_joueur_score.place(x=300, y=160)
label_tour = tkinter.Label(fenetre, text="Tours", bg="light grey")
label_tour.place(x=220, y=120)
label_nb_tour = tkinter.Label(fenetre, text=tour, bg="white")
label_nb_tour.place(x=230, y=140)
# Création des boutons
bouton_quitte = tkinter.Button(fenetre, text="Quitter", command=fenetre.quit)
canvas.create_window(380, 350, window=bouton_quitte)
bouton_pierre = tkinter.Button(fenetre, text="Pierre", command=lambda k="Pierre": coup(k))
canvas.create_window(140, 300, window=bouton_pierre)
bouton_ciseau = tkinter.Button(fenetre, text="Ciseau", command=lambda k="Ciseau": coup(k))
canvas.create_window(240, 300, window=bouton_ciseau)
bouton_feuille = tkinter.Button(fenetre, text="Feuille", command=lambda k="Feuille": coup(k))
canvas.create_window(340, 300, window=bouton_feuille)
fenetre.mainloop()
Windows / Firefox 102.0
A voir également:
- Gvr background windows 3
- Clé d'activation windows 10 - Guide
- Ai suite 3 - Télécharger - Optimisation
- Montage video windows - Guide
- Windows ne démarre pas - Guide
- Windows movie maker - Télécharger - Montage & Édition