เมธอด create_text ของ Canvas widget ใน Tkinter ไม่มีแอตทริบิวต์ "outline" หรือ "border" สำหรับตั้งกรอบรอบข้อความ ดังนั้นเพื่อใส่กรอบรอบข้อความบน Canvas ให้ทำตามขั้นตอนด้านล่าง
ขั้นตอน
นำเข้าไลบรารี สร้าง instance ของ tkinter frame
กำหนดขนาด frame ด้วย root.geometry
สร้าง Canvas widget ตั้งค่าความสูง ความกว้าง และสีพื้นหลัง background="white"
สร้างวัตถุ text ภายใน Canvas ด้วย create_text() ตั้งค่าฟอนต์และสี
ดึงกรอบขอบเขต (bbox) ของ text item
ใช้ข้อมูล bbox สร้างสี่เหลี่ยมผืนผ้าพร้อมกรอบ
รัน mainloop
ตัวอย่าง
from tkinter import *
root = Tk()
root.geometry("700x350")
canvas = Canvas(root, background="white")
canvas.pack(expand=True)
text = canvas.create_text(175, 50, text="Text inside the Canvas", font="Calibri, 20", fill="green")
bbox = canvas.bbox(text)
canvas.create_rectangle(bbox, outline="blue")
root.mainloop()
ผลลัพธ์
