crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

> Движение стрелок в часах, QGraphicsScene или QPainter
Snikersoman
  опции профиля:
сообщение 1.12.2010, 21:40
Сообщение #1


Студент
*

Группа: Участник
Сообщений: 33
Регистрация: 14.11.2010
Пользователь №: 2187

Спасибо сказали: 0 раз(а)




Репутация:   0  


Доброго времени суток уважаемые программисты!
Прошу вашего совета по такому поводу- пытаюсь написать часы со стрелками, от них требуется:
1)Вывод изображения в QGraphicsScene или же в чем то подобном, чтобы была возможность прилепить все это в Qt Designer к форме
2)Изображения циферблата со стрелками берем из файлов(PNG) лежат около экзешника

Как я это вобще себе представляю: сначало рисуем под нужным углом стрелочки, вставляем изображение циферблата, красиво выводим в ui форме :)
Теперь собственно вопросы:
Когда я вращаю элипс таким методом проблем нет
painter.save();
painter.rotate(90);
painter.setPen(QPen(Qt::black, 12 , Qt::DashDotDotLine, Qt::RoundCap));
painter.setBrush(QBrush(Qt::green, Qt::SolidPattern));
painter.drawEllipse(80, 80, 400, 240);
painter.restore();

а когда я делаю так:
painter.save();
painter.rotate(90);
painter.drawPixmap(0,0,QPixmap(":/images/1.PNG"));
painter.restore();

нифига не выводится:( -Вопрос 1 подскажите как картинку правильно вывести
Еще такое дело:
Раскрывающийся текст
QGraphicsScene *scene = new QGraphicsScene;
    QPainter painter(this);
QPixmap img;
painter.begin(&img);
painter.save();
painter.rotate(180);
painter.drawPixmap(0,0,QPixmap(":/images/1.PNG"));
img.load(":/images/1.PNG");
painter.setPen(QPen(Qt::black, 12 , Qt::DashDotDotLine, Qt::RoundCap));
painter.setBrush(QBrush(Qt::green, Qt::SolidPattern));
painter.drawEllipse(0, 0, 40, 24);

painter.rotate(90);
painter.restore();
painter.end();
QGraphicsPixmapItem * p = scene->addPixmap(img);

ui->graphicsView->setScene(scene);

Пытаюсь вывести свою картинку через QGraphicsScene - выводить выводит а вращать не вращаети что то мне подсказывает что вывожу я криво)- Вопрос 2 как вывести QPixmap через QGraphicsScene чтобы можно было вращать?
Ежели подскажите другие рабочие методы буду очень благодарен :rolleyes:
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
 
Начать новую тему
Ответов
igor_bogomolov
  опции профиля:
сообщение 6.12.2010, 19:06
Сообщение #2


Профессионал
*****

Группа: Сомодератор
Сообщений: 1215
Регистрация: 22.3.2009
Из: Саратов
Пользователь №: 630

Спасибо сказали: 235 раз(а)




Репутация:   29  


ui->graphicsViewdet->setRenderHints(QPainter::Antialiasing | QPainter::SmoothPixmapTransform);
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Сообщений в этой теме


Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 27.12.2024, 9:15