Вы не должны использовать QTableWidget для файлов и папок, так как количество файлов и папок неизвестно. Производительность QTableWidget с огромным количеством элементов плохая.
Вы должны научиться делать Программирование модели / вида , и в ссылке есть пример того, как обращаться с файлами.
С представлением модели у вас есть представление, которое получает информацию от модели. Модель может быть (почти) произвольно огромной, и вид не имеет значения, потому что он загружает только то, что просматривает. Это не похоже на QTableWidget, который все время загружает и вызывает повышение производительности.
Теперь, что касается вашего вопроса о сортировке, вы должны использовать QSortFilterProxyModel
, который вы задали в качестве модели для вашего вида, и вы установили в QSortFilterProxyModel
исходную модель. Прокси работает как посредник между вашим представлением и моделью и может сортировать и фильтровать информацию перед ее передачей. Это правильный способ сортировки таблиц в Qt.