Use QItemDelegate para mostrar miniaturas de imagens
-
09-06-2019 - |
Pergunta
Qual é a melhor maneira de usar QT4 QItemDelegate
mostrar miniaturas de imagens em uma visualização?
Especificamente, como você impede o bloqueio do delegado do item ao gerar pixmaps
de arquivos de imagem muito grandes (> 500 MB)?
Alguém pode criar um link para algum código de exemplo que consiga isso?Então, novamente, talvez este não seja o lugar para procurar código específico do Qt.
Solução
Você está fazendo errado se estiver gerando pixmaps dentro de qualquer um dos métodos delegados (paint, draw...).
Tente gerar as miniaturas apenas uma vez (no thread de trabalho ou talvez nem mesmo em tempo de execução, se possível) e faça com que o delegado apenas as exiba para a função apropriada.
Se você fizer isso em tempo de execução, exiba uma imagem padrão até que a miniatura seja gerada (como os navegadores da Web fazem com as imagens que ainda não foram baixadas).