Arrêter le dessin d'une figure turtle

Résolu
Yazho Messages postés 85 Date d'inscription   Statut Membre Dernière intervention   -  
Yazho Messages postés 85 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour alors j'ai une question je programme en tkinter et j'utilise la fonction Rawturtle() mais je n'arrive pas a arrêter le dessin de par un évènement c'est a dire que la tortue dessine une courbe et j'aimerai l'arrêter pendant qu'elle est en train de la dessiner est-ce possible ? merci
A voir également:

2 réponses

yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   Ambassadeur 1 583
 
bonjour,
peux-tu montrer ton programme?
tiens compte de ceci: https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
0
Yazho Messages postés 85 Date d'inscription   Statut Membre Dernière intervention   2
 
oui bien sur
et pour etre plus precis j'aimerai qu'il arrete ce dessin t.circle(520,60)
c =False
cash=False
tt=None
y=-130
total=0

def anim(cpt,nombre):
    """fonction qui va animer et ecrire tous les resultats, elle va ecrire le multiplicateur en temps réel, la somme que l'on
      peut recup en direct, puis va ecrire la mise gagner ou perdu 
      et pour finir la fonction va ecrire la somme total que l'on gagne ou perde"""
    global id_anim,mlt,mlt2,etat,c,euro,y,cash,total,tt
    
    if cpt<=nombre:
        if mlt==None:
            mlt = can1.create_text(-60, -50, text ="x"+str(round(float(cpt),2)), fill="white",font="Arial 50 bold"  )
            mlt2 = can1.create_text(-310, 215, text =str(round(euro*float(cpt),2))+"$", fill="white",font="Arial 15 bold"  )
            id_anim=can1.after(20, anim, round(cpt+0.01,2), nombre)
            
            
        else:
                can1.delete(mlt)
                can1.delete(mlt2)
                mlt = can1.create_text(-60, -50, text ="x"+str(round(float(cpt),2)),fill="white" ,font="Arial 50 bold"  )   
                mlt2 = can1.create_text(-310, 215, text =str(round(euro*float(cpt),2))+"$", fill="white",font="Arial 15 bold"  )
                id_anim=can1.after(20, anim, round(cpt+0.01,2), nombre)
                gain=str(round(euro*float(cpt),2))
                
                if c == True :  
                    # quand ça passe ici il faudrait que le turtle arrete de dessiner
                    c=False
                    can1.delete(tt)
                    total+=float(gain)
                    tt=can1.create_text(300,190, text =str(round(float(total),2))+"$", fill="white",font="Arial 20 bold"  )
                    if y<=140:
                        somme=can1.create_text(300, y, text = "+"+gain+"$", fill="green",font="Arial 15 bold"  )
                        y+=30
                    else:
                        can1.delete(tt)
                    
                    
                
    else:
        print(cash)
        go=Button(Mafenetre , text="REJOUER", command=lambda:[reset(), go.destroy()])
        go.place(x=300,y=100)
        go.config(bg="#8c8c8c" ,activebackground="#8c8c8c",font=("Open Sans", 10))
        if c==False and cash == False:
          # quand ça passe ici il faudrait que le turtle arrete de dessiner
          somme=can1.create_text(300, y, text = "-"+str(euro)+"$", fill="red",font="Arial 15 bold"  )  
          total=total-euro
          can1.delete(tt)
          if y<=140:
              tt=can1.create_text(300, 190, text =str(round(float(total),2))+"$", fill="white",font="Arial 20 bold"  )
              y=y+30
          else:
             can1.delete(tt)
 
          
        

 
        
# =============================================================================
# quand clique sur le bouton BET
# =============================================================================
#
go =None
def parier():
    """quand le bouton bet est pressé """
    global etat,cpt,bet,go
    """  """
    if euro !=0 and etat==0:

        can1.create_rectangle((-380,177),(-240,227), fill="#16c74b" , width=0 )
        cash = can1.create_text(-310, 190, text ="CASHOUT", fill="white",font="Arial 15 bold"  )
        etat=1
        nombre = end()
        anim(1.00,1.5) 
        t.speed(1)
        t.width(5)
        t.forward(50)
        t.circle(520,60)
        
0
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   1 583
 
je pense que tu peux faire tourner la tortue, pas à pas, dans un autre thread, en t'inspirant de cet exemple:
https://openclassrooms.com/forum/sujet/tkinter-et-threading
0
Yazho Messages postés 85 Date d'inscription   Statut Membre Dernière intervention   2 > yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention  
 
je vais essayer ça mais j'avais déjà essayé de faire tourner la tortue pas à pas avec des micro courbe mais le problème c'est qu'elle a des micro freeze entre chaque courbe
0