スタンプカード(小6女子/作)
講師から一言
mouse_click を用いた座標判定、PhotoImage と Button の組み合わせ、tag によるスタンプ削除など、GUIプログラミングの基本をしっかり押さえています。
特に、ユーザー操作に応じて
「内部状態の更新 → Canvas 反映」
を適切に行える構造は評価ポイントです。
今後は画像選択処理の共通化などでさらに洗練できますが、現段階としては非常に完成度の高いコードです。
Pythonで記述したコード
import tkinter
x=0
y=0
フラグ=False
画像=0
def mouse_click(e):
global フラグ,x,y,画像
if フラグ==True:
x=e.x
y=e.y
if 100",mouse_click)
canvas=tkinter.Canvas(root,width=800,height=650)
canvas.pack()
カード=tkinter.PhotoImage(file="image/カード.png")
ケーキ=tkinter.PhotoImage(file="image/cake.png")
リンゴ=tkinter.PhotoImage(file="image/apple.png")
イヌ=tkinter.PhotoImage(file="image/dog.png")
ベル=tkinter.PhotoImage(file="image/ベル.png")
消しゴム=tkinter.PhotoImage(file="image/eraser.png")
canvas.create_image(400,300,image=カード)
canvas.create_text(580,540,text="1",font=("メイリオ",16))
canvas.create_text(660,540,text="B",font=("メイリオ",16))
canvas.create_text(600,575,text="江戸川 コナン",font=("メイリオ",16),anchor="w")
canvas.create_text(75,60,text="10",font=("メイリオ",30))
ケーキボタン=tkinter.Button(image=ケーキ,command=ボタン1)
ケーキボタン.place(x=100,y=600)
リンゴボタン=tkinter.Button(image=リンゴ,command=ボタン2)
リンゴボタン.place(x=200,y=600)
イヌボタン=tkinter.Button(image=イヌ,command=ボタン3)
イヌボタン.place(x=300,y=600)
ベルボタン=tkinter.Button(image=ベル,command=ボタン4)
ベルボタン.place(x=400,y=600)
消しゴムボタン=tkinter.Button(image=消しゴム,command=ボタン5)
消しゴムボタン.place(x=500,y=600)
root.mainloop()
