Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Qt и кроссплатформенное программирование С/С++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 26.08.2016, 05:13   #1
SAMOUCHKA
Форумчанин
 
Регистрация: 07.08.2011
Сообщений: 576
По умолчанию QPicture

Здравствуйте!
Нужно рисовать на QPicture поочередно кистью и пером
вот простой пример, рисуем прямоугольник и линию. потом сохраняем в файл.
Код:
QPicture pic;
    QPainter p;

    p.begin(&pic);
    p.setBrush(QBrush(QColor(Qt::blue)));
    p.drawRect(rect);
    p.end();

    p.begin(&pic);
    p.setPen(QColor(Qt::black));
    p.drawLine(0, 0, 500, 500);
    p.end();

    pic.save("picture.pic");
при этом квадрат не рисуется

Если закоментировать рисование линии:
Код:
QPicture pic;
    QPainter p;

    p.begin(&pic);
    p.setBrush(QBrush(QColor(Qt::blue)));
    p.drawRect(rect);
    p.end();

    /*p.begin(&pic);
    p.setPen(QColor(Qt::black));
    p.drawLine(0, 0, 500, 500);
    p.end();*/

    pic.save("picture.pic");
тут квадрат рисуется. Очевидно такое происходит из за p.begin() p.end(). Но мне нужно поочередно рисовать пером и кистью, а как вернуть QPainter в исходный режим, без begin и end не знаю
SAMOUCHKA вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск