如何在 tkinter canvas 中为闭合多段线着色?

how to color closed polylines in tkinter canvas?

我想给封闭的不相交多段线包围的区域上色。这是一个 我想要的例子:

import tkinter as tk


class GUI:
    def __init__(self, master, x, y):
        self.master = master
        self.canvas = tk.Canvas(master, width=x, height=y)
        self.canvas.pack()
        polyline = self.canvas.create_line(10, 10, 10, 20, 200, 300, 250, 150, 10, 10)


x, y = 500, 500
root = tk.Tk()
gui = GUI(root, x, y)
root.mainloop()

我想为折线 canvas 对象定义的区域着色。

您可以创建多边形而不是折线。在这种情况下,您可以同时设置填充颜色和轮廓颜色。这是一个用法示例:

import tkinter as tk


class GUI:
    def __init__(self, master, x, y):
        self.master = master
        self.canvas = tk.Canvas(master, width=x, height=y)
        self.canvas.pack()
        polyline = self.canvas.create_polygon(10, 10, 10, 20, 200, 300, 250, 150, 10, 10, outline="green", fill="blue")


x, y = 500, 500
root = tk.Tk()
gui = GUI(root, x, y)
root.mainloop()