シナリオが異なれば、戦略も異なります。wxPython をプレゼンテーションの目的で使用し、データを処理する別のモジュール/パッケージがあることを前提としています。wxPython コントロールは、データ抽象化レイヤーからのみデータを取得します。
シナリオ I: すべてのログ データをメモリにロードし、wx.listctrl または wx.listview を使用して行を表示します。
シナリオ II: wx ビューが更新されたときにデータベースからデータを取得します。
シナリオ I では、UI が読み取った位置を記憶する変数をセットアップするだけで済みます。または、ログをリストとしてロードする場合は、リスト スライドを使用することもできます。すべてのデータがロードされ、それ以上 sqlite db 接続が確立されないため、下/上にスクロールしてビューを自動的に更新することは、シナリオ I で実装できます。データベース操作が多すぎるため、シナリオ II で上下にスクロールして自動更新を実装するのは適切ではありません。
シナリオ II では、ページ サイズを設定し、LIMIT/OFFSET を使用して必要なデータ セットを取得できます。オフセット番号用に別の変数を保持します。変数 page_size と offset を使用すると、データを取得して wx ビューを更新するだけです。このシナリオは、メモリの使用を制限する場合に特に適しています。ログの大きさはわかりませんが、ログが大きくなり続け、他の比較的大きなデータセットを同時にロードする必要がある場合があるため、すべてをメモリにロードすることはお勧めできません。