У меня есть следующий код (где store - gtk.ListStore
, а титр - gtk.TreeIter
. В документах говорится, что если следующей строки нет, iter_next()
вернет None
, следовательно, перерыв при этом найдено. Предполагается выполнить поиск по ListStore
из (int, str)
и удалить один элемент, чей компонент int
соответствует item_id.
while True:
if store.get_path(titer)[0] == item_id:
store.remove(titer)
break
else:
titer = store.iter_next(titer)
if titer is None:
break
Однако, если элемент в середине был ранее удален, вместо titer.iter_next()
, указывающего на следующий действительный элемент, он указывает на Нет. Это означает, что если элемент с правильным значением int
находится после ранее удаленного элемента, он никогда не будет найден. Есть ли правильный способ поиска с помощью gtk.ListStore
для удаления элементов?