Próbuję utworzyć funkcję, która otwiera lokalizację pliku ze skrótu do mojego własnego eksploratora plików i podświetla plik z eksploratora plików.

def openFileLocation():
    self.Directory = os.path.dirname(self.favoritesListWidget.currentItem().data(QtCore.Qt.UserRole)[2])
    ProjectOSP.setCurrentIndex(1)
    self.fileExplorerListWidget.setCurrentItem(self.favoritesListWidget.currentItem().text())
    reloadListWidget()
0
Aoof 20 listopad 2019, 09:35

1 odpowiedź

Rozwiązałem to, używając metody QtWidgets.QListWidget.findItems (), używając flagi MatchExactly i ciągu z nazwy mojego skrótu wyodrębnionego ze ścieżki tego skrótu, a następnie ponownie wczytując plik fileExplorer, a następnie przechodząc przez wyniki, które powinny być jednością i bieżącej pozycji do dokładnie tej pozycji.

def openFileLocation():
    data = self.favoritesListWidget.currentItem().data(QtCore.Qt.UserRole)
    self.Directory = os.path.dirname(data[2])
    ProjectOSP.setCurrentIndex(1)
    reloadListWidget()
    [self.fileExplorerListWidget.setCurrentItem(x) for x in self.fileExplorerListWidget.findItems(data[0]+'.'+data[1], QtCore.Qt.MatchExactly)]

Więcej informacji o findItems można znaleźć tutaj

1
eyllanesc 20 listopad 2019, 10:07