문제

나는있다 ListStore 목록을 모델링합니다 Tag에스. 이 목록은 ListStore. 내가하고 싶은 것은 듣는 것입니다 TagRemoved 내 이벤트 TagList 수업을하고 제거하십시오 Tag ~로부터 ListStore 이벤트가 트리거되면. 그러나 검색 방법을 찾을 수없는 것 같습니다. ListStore 주어진 행을 포함합니다 Tag, 그것을 제거 할 수 있도록.

이것을 할 방법이 있습니까?

도움이 되었습니까?

해결책

GtkListStore 상행 GtkTreeModel 원하는 트리 트래버스 작업이 포함 된 인터페이스. 내가 아는 한, 목록/트리 스토어를 검색하는 편의 API는 없으므로 직접 굴려야합니다.

당신은 단순히 a를 반복하고 있기 때문에 GtkListStore, 당신은 아동/부모 관계를 다루는 모든 API를 무시하고 간단히 사용할 수 있습니다. gtk_tree_model_iter_first() 그리고 gtk_tree_model_iter_next() 목록을 가로 지르기 위해.

또는 이미 상점에서 제거 된 태그의 색인을 이미 알고 있다면 (예 : TagRemoved 이벤트), 당신은 그것을 a로 바꿀 수 있습니다 GtkTreePath 그리고 사용 gtk_tree_model_get_iter() 검색하지 않고 해당 행을 직접 검색합니다.

다른 팁

gtkliststore는 내부적으로 구현됩니다 링크 된 목록 따라서 모델을 직접 스캔해야합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top