Я пытаюсь отсортировать QFileSystemModel по имени, дате создания и дате последнего доступа (все по возрастанию и по убыванию).Я использую QSortFilterProxyModel для сортировки.Каким-то образом при изменении порядка сортировки возникает странный эффект: количество символов, отображаемых до тех пор, пока имя не будет выделено, сильно варьируется.В зависимости от порядка сортировки, некоторые элементы имеют только три буквы (Pro ...), а другие - до десяти (Программы).Я уже установил достаточно большой размер сетки просмотров (100x100), изменение размера значка не влияет на вид.
Если я сортирую QFileSystemModel напрямую, все работает нормально, но тогда я не могу отсортировать по другим аспектам, кроме имени файла.
Где я могу изменить поведение QSortFilterProxyModel, исключающего текст?Почему мой прокси влияет на вид вообще?Где я могу найти дополнительную информацию о QFileSystemModel?Я до сих пор не знаю, какие данные хранятся в других столбцах (№ 1 - это имя файла).
Снимок экрана:
Как выможет видеть, в зависимости от сортировщика, имена файлов удаляются или нет.Если я сортирую по убыванию, его "twai ...", если я сортирую по возрастанию, его "twain.dll".
Вот код, который выполняется, когда я нажимаю на стрелку сортировки:
// initialization
fileNameSortModel = new QSortFilterProxyModel(parent);
fileNameSortModel.sourceModel(originalModel); // originalModel is type of QFileSystemModel
// ...
void PFileListWithHeader::onNameSort(Qt::SortOrder order)
{
currentModel = fileNameSortModel;
view->setModel(currentModel);
view->setRootIndex(translateOriginalIndexToProxy(originalModel->index(path)));
currentModel->sort(0, order);
}
Заранее спасибо!