【发布时间】:2023-03-11 12:49:02
【问题描述】:
我一直在做一个简单的 textctrl 项目来更熟悉 wxpython,但我遇到了一个小障碍。我正在制作一个简单的代码编辑器,目前正在处理语法高亮。一切正常,除了因为我的 textctrl 绑定到一个事件:
self.status_area.Bind(wx.EVT_CHAR, self.onKeyPress)
我在该定义中有代码:
def onKeyPress (self, event):
Line = self.status_area.GetValue()
它将不再允许用户输入任何字母。我可以毫无问题地删除并创建一个新行,但是如果我输入“hello”,什么都不会出现。在调试我的代码时,我知道它通过 onKeyPress() 和里面的代码运行,如果我将代码更改为:
def onKeyPress (self, event):
event.Skip()
它会正常工作的。我试图将普通文本编辑器的工作重新编码到 onKeyPress() 中,但它开始变得过于庞大。任何有关此事的帮助将不胜感激。
【问题讨论】:
-
解决了我的问题,非常感谢。这是一个非常好的论坛。不过我不需要添加 event.skip()。
-
如果它解决了您的问题,请不要忘记接受答案。您可以通过单击答案旁边的复选标记来做到这一点。
-
解决了什么问题,我什么都看不到 :(