我需要允许用户在 Canvas Widget 中键入文本,使画布在用户键入新文本时更新。
这是我迄今为止尝试过的,但没有让它发挥作用。
首先我有一个mouseDown
绑定到 Button-1 事件的方法
widget.bind(self.canvas, "<Button-1>", self.mouseDown)
此mouseDown
方法将startx, starty
位置返回给我的方法drawText
def drawText(self, x, y, fg):
self.currentObject = self.canvas.create_text(x,y,fill=fg,text=self.typedtext)
我在画布小部件上也有一个全局绑定,可以像这样捕获任何按键:
Widget.bind(self.canvas, "<Any KeyPress>", self.currentTypedText)
def currentTypedText(self, event):
self.typedtext = str(event.keysym)
self.drawText(self, self.startx, self.starty,self.foreground)
但是没有错误,画布上也没有打印任何内容。