2013-02-11 1 views
0

Это маленький корпус основной программы:Создание двух QPainters в paintEvent

void Widget::paintEvent(QPaintEvent *){ 
    QPainter *painter1 = new QPainter(this); 
    QPainter *painter2 = new QPainter(this); 

    delete painter1; 

    painter2->drawLine(50,50,200,100);  
} 

Это происходит сбой. Если удалить последнюю строку я получаю следующее предупреждение:

QPaintDevice: Невозможно уничтожить краски устройство, красили

ответ

1

Чтобы прояснить немного, что phyatt говорит, для того, чтобы избежать этой ошибки следует добавить к коду:

painter2->end(); 

После рисования линии.
Я еще не тестировал, но я думаю, что добавление этой строки кода поможет вам.

Смежные вопросы