Je travaille sur un jeu où je veux que l'image du gagnant augmente sa largeur dans une animation afin qu'elle remplisse l'image entière à la fin. J'ai déjà le code suivant pour travailler, mais j'en ai besoin pour d'autres images et je ne veux pas créer une variable de largeur pour chaque image. Au lieu de cela je voudrais récupérer sa valeur ipadx directement et aussi le changer de cette façon.Comment récupérer et modifier la valeur d'un attribut du gestionnaire de géométrie du pack?
après que le joueur X gagne, je mis la variable anim
-1, et l'animation est exécuté:
# Create Player Info Window:
playerinfowindow=Frame(root, bg='black')
playerinfowindow.pack(side=TOP, fill='both', ipady=3)
playerX=Button(playerinfowindow, bd=0, bg=player[0].color)
iconX=PhotoImage(file='playerX.png')
playerX.config(image=iconX)
width = 84
anim = 0
def px():
global width
global anim
if width < 252:
width += anim
playerX.pack(side=LEFT, ipadx=width)
playerX.after(10, px)
px()
Je veux changer la fonction px()
à quelque chose comme ceci:
def px():
global anim
if playerX['ipadx'] < 252:
playerX['ipadx'] += anim
playerX.pack(side=LEFT, ipadx=84)
playerX.after(10, px)
Et si vous voulez changer les options utilisées lors du tassement du widget? Par exemple, vous l'avez rempli 'fill =" both "' et maintenant vous voulez simplement 'fill =" x "' .. Pouvons-nous utiliser [pack_configure] (http://effbot.org/tkinterbook/pack.htm#Tkinter. Pack.pack_configure-method)? Sur effbot, il est dit que c'est la même chose que 'pack', mais pourquoi il y a 2 méthodes qui font la même chose? – nbro