【发布时间】:2018-06-02 18:28:43
【问题描述】:
我已经制作了一个程序,它在单击时绘制一个椭圆(鼠标单击=起点,鼠标释放=终点),如下面的代码所示,我想添加 if 条件:当 shift 键在绘图过程中被按下,它将使坐标相等,因此,将绘制一个圆形(或完美的椭圆形,如果您愿意)。
from tkinter import *
def draw(event):
if str(event.type)=='ButtonPress':
canvas.old_coords=event.x,event.y
elif str(event.type)=='ButtonRelease':
x,y=event.x,event.y
x1,y1=canvas.old_coords
canvas.create_oval(x,y,x1,y1)
canvas=Canvas()
canvas.pack()
canvas.bind('<B1-Motion>',draw)
canvas.bind('<ButtonPress-1>',draw)
canvas.bind('<ButtonRelease-1>',draw)
我怎么可能考虑按下 shift 然后画一个圆圈?
【问题讨论】:
标签: python tkinter key-bindings tkinter-canvas