2016-03-11 7 views
0

Я использую Qt5.5, я хочу создать внеэкранное изображение, а затем скопировать определенные части заставного изображения обратно в экранную (видимую) область.Qt создает заставку, а затем копирует детали на экран?

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

ответ

1

Я думаю, что вы можете создать QPixmap, а затем обратить ваше изображение, используя QPainter построенный на нем ...

Что-то вроде:

QPixmap pix(500,500);  
    QPainter paint(&pix); 
    paint.setPen(QPen(QColor(255,34,255,255))); 
    paint.drawRect(15,15,100,100); 

Затем вы можете нарисовать QPixmap на экране как обычный (в приложении QML или Widget).

+0

Спасибо, я раньше не встречал QPixmap, сейчас исследую. – SPlatten

+2

@SPlatten - если вы используете вторичный поток для рисования, вам лучше использовать QImage вместо QPixmap, поскольку последний может быть нарисован только из основного потока на некоторых платформах. – dtech

+0

Спасибо, я создаю полосу компаса, на которой будут отображаться различные индикаторы, но идея состоит в том, чтобы создать всю полосу в pixmap, а затем скопировать только видимую соответствующую часть в видимую область. – SPlatten