แพ็คเกจ PIL หรือ Pillow ใน Python มีวิธีการประมวลผลภาพในโปรแกรม เราสามารถเปิดรูปภาพ ปรับแต่งรูปภาพเพื่อการใช้งานที่แตกต่างกัน และสามารถใช้รูปภาพนั้นเพื่อแสดงข้อมูลได้เช่นกัน ในการแสดงรูปภาพในแอปพลิเคชัน โดยทั่วไปเราจะอ้างอิงถึงวิดเจ็ต Canvas เนื่องจากวิดเจ็ตผ้าใบมีฟังก์ชันมากมายในการเพิ่มรูปภาพและวัตถุในแอปพลิเคชัน เราจึงสามารถใช้เพื่อแสดงรูปภาพได้
หากต้องการเปลี่ยนภาพใดภาพหนึ่ง เราสามารถกำหนดค่าผ้าใบโดยใช้ itemconfig() ตัวสร้าง ต้องใช้ไฟล์ภาพที่จำเป็นต้องอัปเดตและแสดงบนหน้าต่าง
ตัวอย่าง
สำหรับตัวอย่างนี้ ให้ใช้ภาพที่คุณเลือก 3 ภาพและบันทึกไว้ในไดเร็กทอรีโครงการเดียวกัน
# นำเข้าไลบรารีที่ต้องการจากการนำเข้า tkinter *จากการนำเข้า tkinter ttk จากอิมเมจนำเข้า PIL, ImageTk# สร้างอินสแตนซ์ของ tkinter framewin=Tk()# ตั้งค่า geometrywin.geometry("750x400")# กำหนดฟังก์ชันเพื่ออัปเดต imagedef update_image ():canvas.itemconfig(image_container,image=img2)# สร้างแคนวาสและเพิ่มรูปภาพลงใน itcanvas=Canvas(win, width=650, height=350)canvas.pack()# สร้างปุ่มเพื่ออัปเดตปุ่มรูปภาพแคนวาส =ttk.Button(win, text="Update", command=lambda:update_image())button.pack()# เปิดรูปภาพใน Variableimg1=PhotoImage(file="logo.png")img2=PhotoImage(file="logo2.png")img3=PhotoImage(file="logo3.png")# เพิ่มรูปภาพใน canvasimage_container=canvas.create_image(0,0, anchor="nw",image=img1)win.mainloop()ก่อน>ผลลัพธ์
การเรียกใช้โค้ดด้านบนจะแสดงหน้าต่างที่มีแคนวาสและปุ่มสำหรับอัปเดตรูปภาพแคนวาส
ตอนนี้ ให้คลิกปุ่ม "อัปเดต" เพื่อเปลี่ยนรูปภาพ