Russian Qt Forum
Апрель 23, 2024, 22:10 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: имена длинных файлов и папок  (Прочитано 4163 раз)
koldun90
Крякер
****
Offline Offline

Сообщений: 345


Просмотр профиля
« : Февраль 20, 2015, 19:46 »

есть qlistview в нем представлена qfilesystemmodel обернутая в qsortfilterproxymodel

Как сделать так чтобы имена длинных файлов и папок переносились на другую сторону(на вторую сторону чтоб они прям полностью отображались... вот допустим отображается название папки полностью (SYSTEM VOLUME INFORMATION) переносится на след строку если сжимаю.... ну я думаю вы поняли)

Записан
BuRn
Гость
« Ответ #1 : Февраль 21, 2015, 02:45 »

А он разве не поддерживает делегаты? Наверняка можно описать делегат для элемента listview
Записан
Igors
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 11445


Просмотр профиля
« Ответ #2 : Февраль 21, 2015, 11:04 »

см пропердь wordWrap
Записан
koldun90
Крякер
****
Offline Offline

Сообщений: 345


Просмотр профиля
« Ответ #3 : Февраль 22, 2015, 09:45 »

проблема в следующем наследовался QStyledItemDelegate
решил переопределить метод paint
но вот вопрос в том что у рисовальщика мне нужно 2 метода
Код:
painter->drawPixMap
--для вставки иконки папки
и
Код:
painter->drawText
-- для вставки названия папки или файла
Вопрос в следующем а как мне определить координаты где нужно рисовать (иконка моей папки имеет размер 24 на 24 пикселя)
из этого следует что ширина и высота равна 24 пикселя Непонимающий
а вот как определить координаты х и у
ведь папок много они должны красиво отрисовываться как на первом скрине
поэтому как я понял координаты х и у динамические....
также нужно определить корректно и координаты текста...
помогите определить координаты...


Записан
Igors
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 11445


Просмотр профиля
« Ответ #4 : Февраль 22, 2015, 10:07 »

Не уверен что Вам вообще нужно "рисовать". Для начала я бы перекрыл  QStyledItemDelegate::sizeHint где вернул бы бОльший size. Что из этого выйдет?
Записан
koldun90
Крякер
****
Offline Offline

Сообщений: 345


Просмотр профиля
« Ответ #5 : Февраль 22, 2015, 10:31 »

в моем классе наследованом от qfilesystemmodel переопределен метод data
и внем я как раз выполняю

Код:
if (role==Qt::SizeHintrole)
{
     return QSize(80,60);
}

после этого папки становятся как бы ровными стройными друг за другом
но как бы если названия папки или файла если оно длинное оно не переносится на след строку оно как бы скрывается а мне нужно чтобы все переносилось на след строку...
Записан
koldun90
Крякер
****
Offline Offline

Сообщений: 345


Просмотр профиля
« Ответ #6 : Февраль 22, 2015, 10:40 »

Код:
 QStyledItemDelegate::sizeHint
переопределил sizehint

в нем одна строка
Код:
return QSize(80,60);
никаких изменений нет все нормально рисуется но длинные имена папко и файлов не переносятся на след строку)

Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.048 секунд. Запросов: 22.