私は現在、tkinterでGUIを構築する方法を学びたいと思っています。テストアプリで問題が発生しました。ラジオボタンを使用してボタン内の写真を更新するにはどうすればよいですか?
私は、テキストの代わりにイメージを表示するボタンがあります。また、標準ボタンに表示されるイメージを制御するラジオボタンもあります。現在のところ、ラジオボタンは選択されているラジオボタンに関係なく、常にデフォルトの写真を持っているため、ラジオボタンはphotofilepath
StringVarを更新していないようです。ここに私の(簡体字)コードがあります:
root = Tk() # Set up
root.title("Test GUI")
gui.grid(column=0, row=0, sticky=(N, W, E, S))
photofilepath = StringVar() # Set default photo
photofilepath.set("C:/Users/Ben/Pictures/Default photo.png")
photo = PhotoImage(file=photofilepath.get())
CalcButton = ttk.Button(gui, image=photo)
CalcButton.grid(column=3, row=2, columnspan=1)
# Set button photo
Photo1Rbutton = ttk.Radiobutton(gui, text="Photo 1", variable=photofilepath,
value='C:/Users/Ben/Pictures/Photo 1.png')
Photo1Rbutton.grid(column=4, row=2, sticky=S)
Photo2Rbutton = ttk.Radiobutton(gui, text="Photo 2", variable=photofilepath,
value='C:/Users/Ben/Pictures/Photo 2.png')
Photo2Rbutton.grid(column=4, row=3)
root.mainloop()
ありがとうございました。
ラジオボタンは(自動的に) '光画像(...)は'新しいイメージをロードするために、そして 'CalcButton [画像] = photo'に実行されませんボタンの画像を置き換えます。 – furas
ありがとう@furas私の以前の質問にも助けてくれました。 –
あなたの例がうまくいかないので、私は完全な実際の例を作成しています;)たとえば、あなたは未知の変数 'gui'を持っています:) – furas