3

wx.TextCtrl を使用して、ネットワーク デーモンからテキストを出力しています。
出力が非常に冗長であるため、TextCtrl のテキストのサイズが大きくなる可能性があります (ところで、TextCtrl のコンテンツのサイズに制限はありますか?)
TextCtrl.GetNumberOfLines の場合、TextCtrl から上位 N 行を削除したいと思います。 () は、事前定義されたしきい値を超えています。これを達成するための最良の方法は何ですか?

4

4 に答える 4

1

SetMaxLengthリファレンスは、制限は基になるネイティブ テキスト コントロールに依存するが、少なくとも 32KB である必要があると述べています。

上位 N 行の削除については、0..N-1 に対して GetLineLength を呼び出し合計 S を計算してから、Remove (0,S)を呼び出すことができます。

于 2009-01-16T12:44:11.957 に答える
0

wx.TextCtrlのRemoveメソッドはどうですか?

新しいテキストを追加するときはいつでも、現在のテキストが長すぎるかどうかを確認し、最初から一部を削除できます。

于 2009-01-16T12:43:31.643 に答える
0

Remove() はトリックを行う必要があります。

wx.TE_RICH フラグのない TextCtrl は、Windows で 64 KB を超えることはできません。

于 2009-01-16T12:46:25.493 に答える