如图中的代码所示,self.canvas.create_oval(self.x,self.y,event.x,event.y)这一行代码,那个event.x,event.y不是已经将坐标赋值给self.x和self.y了吗?为什么还要再写入括号中?换句话问就是为什么不是self.canvas.create_oval(event.x,event.y)?
python中的画图坐标问题
如图中的代码所示,self.canvas.create_oval(self.x,self.y,event.x,event.y)这一行代码,那个event.x,event.y不是已经将坐标赋值给self.x和self.y了吗?为什么还要再写入括号中?换句话问就是为什么不是self.canvas.create_oval(event.x,event.y)?
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
1条回答 默认 最新
关注 以下回答参考了GPT,请查看是否可解决你的问题:
在self.canvas.create_oval()
函数中,event.x
和event.y
是表示鼠标点击位置的坐标。而self.x
和self.y
则可能代表前一个鼠标点击位置的坐标(如果这个类属性在其他地方被赋值过),或者是该类的初始值。这行代码的作用是在画布上创建一个椭圆(或圆)形状,其中
(self.x, self.y)
是椭圆的左上角位置,(event.x, event.y)
是椭圆的右下角位置,即矩形框起来的区域。如果你直接使用
self.canvas.create_oval(event.x, event.y)
,会将每次鼠标点击事件的坐标传递给create_oval
函数,导致每次都只绘制一个点(椭圆的宽度和高度都为0)。这并不是我们想要的结果。因此,通过使用
self.x
和self.y
来指定椭圆的起始位置,我们可以在鼠标点击的过程中绘制出具有一定大小的椭圆形状。总结起来,
self.canvas.create_oval(self.x, self.y, event.x, event.y)
会在画布上创建一个矩形框起来的椭圆形状,其中(self.x, self.y)
是椭圆的左上角位置,(event.x, event.y)
是椭圆的右下角位置。这样可以绘制出具有一定大小的椭圆形状。本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 1无用
悬赏问题
- ¥15 关于redhat虚拟机系统新建卷的问题
- ¥50 WRFDA读取风云四号A 星的GIIRS数据
- ¥15 C# 爬虫融通金网址实时银价
- ¥15 热敏电阻NTC,温控不同颜色的LED的亮与灭,PCB
- ¥20 ESP32使用MicroPyhon开发,怎么获取485温湿度的值,温湿度计使用的鞋子是Modbus RTU
- ¥50 苹果MGIE项目部署缺少emb权重
- ¥15 采用ansys进行机翼在特定路径下的打孔过程中的受力分析
- ¥15 单片机adb主机连接手机,usb调试密钥无法保存
- ¥15 已知X和Y有以下关系,求X和Y的关系式
- ¥15 net core 同时编辑怎么防止数据多保存了