Моя программа строит изображение по сложным правилам, а затем отображает его в QScrollArea. Сейчас я делаю это так:
- Создаем QImage
- Заполняем с помощью QImage::setPixel
- Добавляем мой виджет (наследуемый от QWidget) и показываем его в QScrollArea
- Переопределяем paintEvent и используем QPainter::drawImage для отрисовки видимого участка с нужным масштабом
Кстати, это нормальный способ или можно как-то проще?
Проблема в том, что QImage хранит данные в памяти, а у меня могут быть очень большие изображения, которые в память не уместятся. Нужен аналог QImage, который хранит данные на диске. Как это можно организовать?