Windowsでwx.TE_RICH2オプションを指定してwx.TextCtlを使用すると、AppendText関数を使用するときに自動スクロールでこの奇妙なバグが発生します。すべてのテキストが表示領域の上にくるようにスクロールしますが、これはあまり便利な動作ではありません。
テキストを追加した後、ScrollLines(-1)の呼び出しを追加しようとしましたが、これにより、正しい位置にスクロールされますが、自動スクロール時にウィンドウが点滅する可能性があります。だから私は自動的に一番下までスクロールする別の方法を探しています。
これまでのところ、私の解決策は、AppendText関数の自動スクロールをバイパスして、次のように独自の関数を実装することです。
def append_text(textctrl, text):
before_number_of_lines = textctrl.GetNumberOfLines()
textctrl.SetInsertionPointEnd()
textctrl.WriteText(text)
after_number_of_lines = textctrl.GetNumberOfLines()
textctrl.ScrollLines(before_number_of_lines - after_number_of_lines + 1)
もっと良い方法はありますか?