from PyQt4.QtGui import * from PyQt4.QtCore import * class ListView(QListView): def __init__(self, parent=None): super(ListView, self).__init__(parent) self.setMouseTracking(True) self.entered.connect(self.onEntered) def onEntered(self, index): if index.isValid(): self.setCurrentIndex(index) self.edit(index, self.AllEditTriggers, None) if __name__ == '__main__': import sys import random app = QApplication(sys.argv) model = QStandardItemModel(10, 1) listView = ListView() listView.setModel(model) for row in range(10): index = model.index(row, 0, QModelIndex()) model.setData(index, random.randint(0, 100)) listView.show() sys.exit(app.exec_())