我正在开发一个用 C 编写的 GTK 程序。在特定函数中,adw_combo_row_set_model ()
我需要提供一个GListModel
。我有一个GList
。我怎样才能将 GList 转换为 GListModel 或以其他方式提供与 GListModel 兼容的 GList 视图?
我正在开发一个用 C 编写的 GTK 程序。在特定函数中,adw_combo_row_set_model ()
我需要提供一个GListModel
。我有一个GList
。我怎样才能将 GList 转换为 GListModel 或以其他方式提供与 GListModel 兼容的 GList 视图?
尽管两个名称中都出现了“List”,但
GListModel
实际上与 并无关联GList
。没有直接转换。您有两个主要选择:
选择 的现有实现
GListModel
,例如GListStore
,实例化它,并将 的元素复制GList
到其中。编写自己的实现
GListModel
,包装GList
并提供它的视图。根据 的来源
GList
以及您需要用它做什么,您可能还有第二个选项,即使用GListModel
。这样就不需要采取任何特殊措施来获取它。