So suchen Sie durch einen gtk.ListStore in pyGTK und entfernen von Elementen?

Ich habe den folgenden code ein (wo store ist ein gtk.ListStore und titer ist ein gtk.TreeIter. Die docs sagen, dass, wenn es keine nächste Zeile, iter_next() zurück None, daher die Pause, wenn es gefunden ist. Es soll die Suche durch die ListStore von (int, str) und entfernen Sie die Elemente, deren int - Komponente entspricht 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

Jedoch, wenn ein element in der Mitte hat, die zuvor gelöscht wurden, statt titer.iter_next() Hinweis auf die nächste gültige element, es weist auf Keine. Dies bedeutet, dass, wenn das element mit der rechten int Wert ist nach dem zuvor gelöschten Artikel, es wird nie gefunden. Gibt es eine richtige Weg, um suchen Sie durch einen gtk.ListStore Artikel zu entfernen?

InformationsquelleAutor Macha | 2010-08-06
Schreibe einen Kommentar