I'm using Qt 4.2.0 open source on windows. I did exactly what you did in the movie clip and it worked just like it should. Your exception confirms my belief that the item isn't removed properly. I can't tell you why, but you might simplify your code by removing the repeated calls to itemToIndex and indexToItem.
Deleting objects in an event handler can be hairy. Try letting your items be subclasses of QObject as well and call QObject::deleteLater(). That might prevent the crash, but doesn't answer why the items aren't removed as they should.
Good Luck!
Bookmarks