0

テスト目的で、RichTextCtrl に記述した内容をすべてコンソールに出力しようとしています。しかし、それは機能していません。これは、textArea と呼ばれる RichTextCtrl のバインディングを作成した方法です。

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 を呼び出さない場合、キーは「食べられ」、対応する char イベントはありません。これはボタンでは問題になりませんが、文字イベントは大文字と小文字、アクセント、ウムラウトなどをキャッチする適切な方法であるため、テキスト コントロールでは気にするかもしれません。

于 2015-05-06T06:27:49.833 に答える