0

出于测试目的,我试图在控制台中打印我在 RichTextCtrl 中编写的所有内容。但是,它不起作用。这是我为 RichTextCtrl 编写绑定的方式,称为 textArea:

self.textArea.Bind( wx.EVT_KEY_DOWN, self.syntaxColoring_C )

这是事件处理程序:

def syntaxColoring_C( self, event ):
    print self.textArea.GetValue()

但是,当我键入内容时,控制台中只打印了一个空白行,而 RichTextCtrl 中没有任何内容出现。我究竟做错了什么?提前致谢。

4

1 回答 1

1

这可以通过添加event.Skip()事件处理来纠正。

def syntaxColoring_C(self,event):
    print self.textArea.GetValue()
    event.Skip()

引用此链接

你会注意到我在结尾处也调用了“event.Skip”。如果你不调用Skip,那么key 会被“吃掉”并且不会有相应的char 事件。这在按钮上无关紧要,但您可能会关心文本控件,因为 char 事件是捕获大小写、重音符号、变音符号等的正确方法。

于 2015-05-06T06:27:49.833 回答