Здравсвуйте! Можете пожалуйста исправить код так, чтобы рисовалось что-то больше похожее на виселицу и сделайте пожалуйста так, чтобы при нажатии на букву она становилась зелёной или красной зависимости от правильности ответа

Код(К сожалению не могу его вставить с большими пробелами (Tab)):
from random import randint
from tkinter import *
from tkinter import messagebox

logs = Tk()
logs.geometry("900x800")
kanva = Canvas(logs, width=300, height=300)
kanva.place(x=0, y=0)

vardi=["Gurķis", "Tomāts", "Burkāns", "Ķirbis", "Sīpols"]

nosaukums=Label(logs,text='Karatavas spēle', font="Arial 20 bold")
nosaukums.pack()

Uzdevums=Label(logs, text="", font="Arial 50 bold")
Uzdevums.place(x=120, y=400)

y=0
wordIndex=""

def Word():
global wordIndex
r=randint(0,9)
wordIndex=vardi[r]
global Uzdevums
Uzdevums.config(text="-"*len(wordIndex))
global numlncorrect
numlncorrect=0
kanva.delete("all")
Word()



def checkLetter(event):
burts=event.widget["text"]
z=wordIndex.find(burts)
if wordIndex[z]==burts:
newGuess = ""
global Uzdevums
oldGuess=Uzdevums["text"]
for i in range(len(wordIndex)):
if burts==wordIndex[i]:
newGuess+=burts
else:
newGuess+=oldGuess[i]
Uzdevums.config(text=newGuess)
if Uzdevums["text"]==wordIndex:
nebeigt1=messagebox.askyesno("uzvara","Vai spēlēsi vēl?")
if nebeigt1==True:
Word()
else:
logs.destroy()
else:
global numlncorrect
numlncorrect+=1
zimet()
if numlncorrect==10:
nebeigt2=messagebox.askyesno("zaudējums","Vai spēlēsi vēl?")
if nebeigt2==True:
Word()
else:
logs.destroy()

burti=[]
x="AĀBCČDEĒFGĢHIĪJKĶLĻMNŅOPRSŠTUŪVZŽ"
for i in range(33):
burti.append(Button(logs, text = x[i], fg = "white", bg="red", width=3, font="Arial 20 bold"))
burti[i].place(x=500+70*(i%5), y=60+70*(i//5))
burti[i].bind(' ', checkLetter)

def zimet():
global numlncorrect
if numlncorrect == 1:
kanva.create_oval(50, 50, 100, 100)
elif numlncorrect == 2:
kanva.create_line(75, 100, 75, 200)
elif numlncorrect == 3:
kanva.create_line(75, 125, 50, 150)
elif numlncorrect == 4:
kanva.create_line(75, 125, 100, 150)
elif numlncorrect == 5:
kanva.create_line(75, 200, 50, 225)
elif numlncorrect == 6:
kanva.create_line(75, 200, 100, 225)
elif numlncorrect == 7:
kanva.create_line(150, 225, 150, 20)
elif numlncorrect == 8:
kanva.create_line(150, 20, 100, 20)
elif numlncorrect == 9:
kanva.create_line(20,80,55,80,fill="black",width=3)
elif numlncorrect == 10:
kanva.create_line(55,80,55,70,fill="black",width=3)
Please enter comments
Please enter your name.
Please enter the correct email address.
You must agree before submitting.

Answers & Comments


Copyright © 2024 SCHOLAR.TIPS - All rights reserved.