Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

การลบไอคอน TK เริ่มต้นบนหน้าต่าง Tkinter

Tkinter แสดงไอคอนใบไม้ (Feather/Tk logo) เริ่มต้นบน Title bar สามารถเปลี่ยนได้ด้วยเมธอด win.iconbitmap("path/to/icon.ico") ต้องใช้ไฟล์ .ico (Windows) หรือ .xbm (Linux)

ขั้นตอนการทำงาน

  1. เตรียมไฟล์ไอคอน .ico (ขนาดแนะนำ 16x16, 32x32, 48x48)
  2. สร้าง Root Window
  3. เรียก win.iconbitmap("favicon.ico") ก่อน mainloop()

ตัวอย่างโค้ด


from tkinter import *

win = Tk()
win.geometry("750x250")

# เปลี่ยนไอคอน (ต้องมีไฟล์ favicon.ico ในโฟลเดอร์เดียวกัน)
win.iconbitmap("favicon.ico")

Label(win, text="Transparent Icon Window", font=('Lucida 15')).pack()

win.mainloop()

รูปแบบไฟล์ที่รองรับ

OSFormatหมายเหตุ
Windows.icoรองรับหลายขนาดในไฟล์เดียว
Linux/X11.xbm, .png (via PhotoImage)ใช้ iconphoto() แทน
macOS.icnsใช้ bundle icon แทน

วิธี Cross-platform: ใช้ iconphoto()


from tkinter import *
from PIL import Image, ImageTk

win = Tk()
win.geometry("750x250")

# โหลด PNG แล้วแปลงเป็น PhotoImage
img = Image.open("icon.png")
photo = ImageTk.PhotoImage(img)

# ตั้งไอคอน (ทำงานได้ทุก OS)
win.iconphoto(True, photo)  # True = default for all toplevel windows

Label(win, text="Custom Icon (PNG)").pack()
win.mainloop()

สร้างไฟล์ .ico จาก PNG


# ใช้ Pillow
from PIL import Image
img = Image.open("icon.png")
img.save("favicon.ico", format='ICO', sizes=[(16,16), (32,32), (48,48), (64,64)])

# หรือใช้ Online converter: favicon.io, convertio.co, etc.

การประยุกต์ใช้

จำเป็นสำหรับ: Branding แอปพลิเคชัน Professional software distribution, ทำให้แอปดูเป็นทางการ ไม่ใช่ "Tkinter default app"