2017-06-08 235 views

回答

0

在下面的例子中,我展示了如何知道在QTreeView中选择了哪些项目,为此我们使用selectionChanged信号返回选定和取消选择的项目,然后迭代并获取QModelIndex,并通过这个和我们的模型获取数据。

from PySide.QtGui import * 
from PySide.QtCore import * 

class Main(QTreeView): 
    def __init__(self): 
     QTreeView.__init__(self) 
     model = QFileSystemModel() 
     model.setRootPath(QDir.homePath()) 
     self.setModel(model) 
     m = self.selectionModel() 
     m.selectionChanged.connect(self.onSelectionChanged) 

    def onSelectionChanged(self, selected, deselected): 
     for index in selected.indexes(): 
      print(self.model().data(index)) 


if __name__ == '__main__': 
    import sys 
    app = QApplication(sys.argv) 
    w = Main() 
    w.show() 
    sys.exit(app.exec_()) 
+0

非常感谢! – kelly

相关问题