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

การลบขอบ Outline ของรูปวงรี (Oval) ใน Tkinter Canvas

การวาดวงรี/วงกลมใน Tkinter Canvas ด้วย create_oval() มีขอบ (Outline) เริ่มต้น สามารถลบได้โดยตั้งค่า outline="" (Empty String)

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


from tkinter import *

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

canvas = Canvas(win, width=400, height=350, bg="#458a4a")
# outline="" = ไม่มีขอบ
canvas.create_oval(50, 50, 250, 250, fill="white", outline="")
canvas.pack()

win.mainloop()

พารามิเตอร์ create_oval()


canvas.create_oval(x1, y1, x2, y2, **options)
# x1,y1 = มุมซ้ายบนของ Bounding Box
# x2,y2 = มุมขวาล่างของ Bounding Box

Options สำคัญ

Optionคำอธิบายตัวอย่าง
fillสีเติมภายใน"white", "#FF0000", "" (โปร่งใส)
outlineสีขอบ"black", "" (ไม่มีขอบ)
widthความหนาขอบ (pixel)2, 0 (ไม่มีขอบ)
dashรูปแบบเส้นประ(5, 3), (10,)
activefillสีเมื่อ Hover"yellow"
activeoutlineสีขอบเมื่อ Hover"red"

วิธีอื่น: width=0


# ทั้งสองวิธีเทียบเท่า
canvas.create_oval(50, 50, 250, 250, fill="white", outline="")
canvas.create_oval(50, 50, 250, 250, fill="white", width=0)

รูปทรงอื่นใน Canvas

  • create_rectangle(x1, y1, x2, y2, ...) - สี่เหลี่ยม
  • create_polygon(x1, y1, x2, y2, ...) - รูปหลายเหลี่ยม
  • create_arc(x1, y1, x2, y2, start, extent, ...) - โค้ง/วงกลมไม่สมบูรณ์
  • create_line(x1, y1, x2, y2, ...) - เส้นตรง

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

Custom Shapes, Game Sprites, Charts (Pie slices), Diagram Nodes, Rounded Buttons, Loading Spinners, Avatar Placeholders