スクリプトで txt ファイルの行からボタンを生成しようとしています (各行がボタンになります)。問題なく動作します (行数と同じボタンを生成し、それぞれの行をキャプションとして使用します)、ボタン内のテキストは異なる位置になります (最後のものを除くすべてがボタンの上部にあり、最後のボタンはボタンの中央に適切に配置されています) が、それらはすべて同じコードを共有しています。興味深いことに、この行から得られる値は次のとおりです。
print AuxName
すべてのループで同じ番号ですが、最初のループは番号になります。完全なコードは次のとおりです。
from Tkinter import *
from PIL import Image, ImageTk
master = Tk()
master.wm_title("Window Title")
master.geometry("400x400")
tk_rgb = "#%02x%02x%02x" % (128,128,128)
master.config( bg = tk_rgb)
filehandle = open('test.txt','r')
List = filehandle.readlines()
ListSize = len(List)
filehandle.close()
for x in range ( ListSize ):
yy = 20*(x+1)
AuxName = 'btn'+str(x)
AuxName = Button(master, text=List[x], font=("arial", 10))
tk_rgb = "#%02x%02x%02x" % (0,0,0)
AuxName["fg"] = tk_rgb
tk_rgb = "#%02x%02x%02x" % (255,255,255)
AuxName["bg"] = tk_rgb
AuxName.place(x=10, y=yy , height=20, width=200)
print AuxName
print yy
mainloop()
まとめの質問: すべてのボタンのキャプションをボタンの中央に配置するにはどうすればよいですか?