Russian Qt Forum

Qt => Пользовательский интерфейс (GUI) => Тема начата: slava_d200 от Октябрь 18, 2012, 13:35



Название: QGraphicsView и отображение картинки
Отправлено: slava_d200 от Октябрь 18, 2012, 13:35
Код:
    QList<QGraphicsItem *> items = scene.items();
    while(!items.empty())
    {
       QGraphicsItem * yy = items.takeFirst();
       delete  yy;
    }
    scene.clearSelection();
    scene.clear();
    qDebug() << "UpdateForms";

    photoGraphicsView->setAlignment(Qt::AlignCenter);

    QGraphicsTextItem * text = scene.addText(QObject::tr("НЕТ ИЗОБРАЖЕНИЯ"));

    if (!El->bPicture.isEmpty())
    {
        photo.loadFromData(El->bPicture);

        if (photo.width()!=0)
        {
            delete text;

            int width = photo.width();
            int height = photo.height();

            int width1  = 145;
            int height1 = 145;

            double t1 = double(width1) / double(width);
            double t2 = double(height1) / double(height);

            QGraphicsPixmapItem * item = scene.addPixmap(photo);

            item->scale(qMin(t1,t2),qMin(t1,t2));
        }
    }
есть код. если его запустить без загруженной картинки, то надпись выводится по середине, а если этот код отработать
уже после того как была загружена картинка, а потом очищена,текст не отображается по середине, а отображается в левом верхнем углу.