사용하지 않도록 설정하는 방법을 더블 클릭 파일 이름을 바꾸는 동작에 QTreeView 및 QFileSystemModel 에 PyQt?

StackOverflow https://stackoverflow.com//questions/12670874

문제

간단한 질문입니다.을 사용하고 싶 F2 또는 입력한 이름 바꾸기와 더블 클릭하여 파일을 엽니다.

self.treeView.doubleClicked.connect(self.doubleclick) 내가 할 수 있는 것에서 나 self.doubleClick 방법,그러나 이름을 바꾸는 아직 시작됩니다.

모델가 읽기 전용이 아닌지(model.setReadOnly(False)).

도움이 되었습니까?

해결책

기본적으로, doubleClicked 신호를 방출하기 바로 전에 일반 편집 작업에 의해 수행 QAbstractItemView.편집 기능입니다.

다행히도,이 기능은,가상할 수 있도록 재에 하위 클래스:

class TreeView(QtGui.QTreeView):    
    def edit(self, index, trigger, event):
        if trigger == QtGui.QAbstractItemView.DoubleClicked:
            print 'DoubleClick Killed!'
            return False
        return QtGui.QTreeView.edit(self, index, trigger, event)

다른 팁

Python 버전에서는이 기능이 있는지 모르지만 C ++ Qt에서는 QabStractItemView에서 편집 트리거를 설정합니다.

void setEditTriggers ( EditTriggers triggers )

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top