[英]Tkinter coordinates start at 3?
我有以下代码:
from Tkinter import *
master = Tk()
canvas = Canvas(master, width=640, height=480, bd=0)
canvas.pack()
line_coords = (3, 3, 3, 100)
canvas.create_line(*line_coords, fill='red')
mainloop()
这将在左上角画一条线。 为什么如果我将line_coords更改为(2,2,2,100),该行不会呈现? 就像坐标系从(3,3)开始一样。
画布坐标明确地从零开始,窗框与您的问题无关。
问题是系统上画布的默认高亮度是3,这就是模糊你的线条的原因。 尝试将highlightthickness设置为零,即使x坐标为0,您也会看到您的线条。
不幸的是,borderwidth和highlightthickness都会侵占画布的坐标系。
坐标系可以从左上角开始, 包括操作系统的标题栏和边框,因此你必须向右和向下渲染一点。
它通常是依赖于操作系统的东西。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.