[英]Why a 300*300 Oval cannot fit a 300*300 Canvas perfectly?
from Tkinter import *
class Ball:
def __init__(self, canvas, x1, y1, x2, y2):
self.x1 = x1
self.y1 = y1
self.x2 = x2
self.y2 = y2
self.canvas = canvas
self.ball = canvas.create_oval(self.x1, self.y1, self.x2, self.y2, fill="red")
# initialize root Window and canvas
root = Tk()
root.title("Balls")
root.resizable(False, False)
canvas = Canvas(root, width=300, height=300)
canvas.pack()
# create ball objects
ball = Ball(canvas, 0, 0, 300, 300)
root.mainloop()
如你所见,我在300 * 300帆布上画了一个300 * 300椭圆形,但是椭圆形不完全适合画布。 结果是(Mac OS):
所以我的问题是:
编辑:
ball = Ball(canvas, 1, 1, 299, 299)
也不起作用,它给出:
默认情况下,画布的可绘制区域小于画布的总宽度和高度。 总大小包括小部件边框和高亮环。 如果希望可绘制区域为宽度和高度的100%,则需要将画布的borderwidth
和highlightthickness
属性设置为0(零)。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.