2

次の画像のようなレイアウトを表示するための正しい要素を探して、python3 と GTK3.0 を使用して単純なアプリを構築しています。

ここに画像の説明を入力

このアイテムはデータベースからロードされ(1000以上になる可能性があります)、変更(挿入、削除、更新など)でき、各アイテムには複雑なレイアウト(ラベル、ボタンなど)があります。

動的に変化するリスト/グリッドを使用してレイアウトを構築する方法。

GtkTreeView と GtkCellRenderer について読んだことがありますが、他の人が GtkBox の使用を推奨する方法はわかりませんが、Android の ListView/CursorAdapter や C#/WPF の ListView/Bindings のように、モデルを処理して動的に更新する方法はわかりません。

GTK 3.0 のドキュメントは非常に貧弱で、ウィジェットを拡張する方法を説明していません。ドキュメントで説明されていない、または少なくとも私が見たことのない別のポイントは、同じ要素を再利用する方法、多くの要素を処理するときにリソース (メモリ) を有効に活用する方法です。たとえば、一連のウィジェットを作成しましたグレードと私は N 回使用できません。また、ウィンドウではないアイテムを作成することもできません。すべてがウィンドウ内にある必要があります。再利用できるウィンドウの別の任意の要素を作成できるためです。

上記のポイントのいずれかを教えてください。これには、C#、Python、または C++ のコード例がありますが、例があることが重要です。

4

1 に答える 1

1

python3 と gtk を使用して「sqlite-browser」というプロジェクトを作成しました。データベースに多数のレコードを表示する場合は、ツリービューを使用して、ページャーを追加できます (各ページに 100/200 レコードを制限します)。たぶん、このプロジェクトはあなたを助けることができます. そしてここにあります:https://github.com/LiuLang/sqlite-browser

これはスクリーンショットです:ここに画像の説明を入力

于 2013-05-16T17:36:29.463 に答える