2番目の関数にエントリフィールド値を渡そうとしていますが、空の文字列しか取得できません。誰かが私に行方不明を教えてもらえますか?Python 3とTKinter - my_var.get()を通じてエントリ値を取得できません
def fenetre_changer_nom_joueur(self,joueur):
self.changer_nom_main = Tk()
self.changer_nom_main.geometry('300x200')
self.string_nom_joueur = StringVar()
Entry(self.changer_nom_main, textvariable=self.string_nom_joueur).grid(row=2, column=2, sticky=W)
Button(self.changer_nom_main, text="Enregistrer",command = lambda: self.changer_nom_joueur(joueur), padx=10,
pady=10).grid(row=3, column=1, sticky=W)
Button(self.changer_nom_main, text="Fermer", width=13,
command=lambda: self.fermer_fenetre(self.changer_nom_main), padx=10,
pady=10).grid(row=3, column=2, sticky=W)
self.changer_nom_main.mainloop()
def changer_nom_joueur(self, joueur):
"""
This is where I'm tring to get the Entry field value. But the .get() return an emptry string
"""
temp = self.string_nom_joueur.get()
joueur.nom = temp
あなたのコードはうまく動作します。何かを入力して「Enregistrer」ボタンをクリックすると、入力したものに「temp」が設定されます。あなたが完全な実例を示していないので、残りのコードを推測したとき、私は間違っていると考えました。 –