特定の ID が関連付けられている wxPython アイテムから wx.ListCtrl に追加したいと考えています。どうすればそれを達成できますか?実際、データを特定の ListCtrl アイテムに関連付けるにはどうすればよいでしょうか。
2 に答える
キーが ID であるディクショナリを作成し、ListCtrl の SetItemData を使用してキーをリスト コントロール項目に関連付けます。次に、GetItemData メソッドを使用して ID を取得し、それを辞書で使用してデータを取得できます。
ListCtrlPyDataMixin
または、これを少し簡単にする を使用できます。
個人的には、単純な wx.ListCtrl の代わりに ObjectListView を使用するのが本当に好きです。これがどのように機能するかについてのチュートリアルです:
また、@ nepix32 が述べたように、wxPython 2.9 以降を使用している場合は、wx.DataViewCtrl を使用することもできます。
基本的に、long
をwx.ListCtrl
.SetItemDataおよび.GetItemDataメソッドに関連付けることができます (たとえばrow_id
、データベースからの .
ただし、かなり最近の wxPython (>= 2.9) を使用している場合は、wx.DataViewCtrl
. これは、ListCtrl よりも強力でプログラミングが容易でありPyDataViwModel
、オブジェクトをビュー項目にマップできるようにします。
ListCtrl に近いのは、 in 関数スコープにwx.DataViewListCtrl
非常によく似たです。wx.ListCtrl