当我经常创建画布时,(0,0)坐标位于它的左上角。现在我想把它放在左下角。我想我必须设置"滚动条区域"但我不明白该怎么做。 有人可以解释一下吗?
答案 0 :(得分:3)
tkinter画布不支持更改坐标系。您可以滚动画布,使0,0出现在左下角,但这不会影响坐标系。点(1,1)将始终位于点(0,0)的右侧和下方。
来自official tcl/tk documentation on the canvas(tkinter只是tcl / tk解释器的包装器):
COORDINATES
与画布相关的所有坐标都存储为浮点数。坐标和距离以屏幕单位指定,这些浮点数可选地后跟几个字母之一。如果没有提供字母,则距离以像素为单位。如果字母是m,那么屏幕上的距离以毫米为单位;如果是c那么距离是厘米;我的意思是英寸,而p表示打印机点数(1/72英寸)。较大的y坐标指的是屏幕下方的点;较大的x坐标指的是更远的点。坐标可以指定为偶数个参数,也可以指定为包含偶数个x和y坐标值的单个列表参数。
TRANSFORMATIONS
通常,画布坐标系的原点位于包含画布的窗口的左上角。可以使用xview和yview小部件命令调整画布坐标系相对于窗口原点的原点;这通常用于滚动。画布不支持相对于窗口坐标系的画布坐标系的缩放或旋转。
答案 1 :(得分:0)
您可以创建几个保持屏幕大小的变量。然后将(0,0)
替换为(self.screenWidth-0, self.sceenHeight-0)