2008-08-23 7 views
3

Каков наилучший способ использования QT4's QItemDelegate для отображения эскизов изображений в представлении?Использовать QItemDelegate для отображения уменьшенных изображений изображения

В частности, как вы останавливаете делегирование элемента от блокировки при создании pixmaps из очень больших файлов изображений (> 500 МБ)?

Может ли кто-нибудь ссылаться на какой-то пример кода, который достигает этого? Опять же, возможно, это не место для поиска кода, специфичного для Qt ...

ответ

4

Вы ошибаетесь, если вы генерируете pixmaps внутри любого из методов делегата (рисовать, рисовать ...).
Попробуйте генерировать эскизы только один раз (в рабочем потоке или, возможно, даже не во время выполнения), и делегат просто отобразит их для соответствующей роли.
Если вы делаете это во время выполнения, покажите изображение по умолчанию, пока вы не создадите уменьшенное изображение (например, веб-браузеры не будут делать снимки, которые еще не загружены).