【发布时间】:2014-03-26 02:51:20
【问题描述】:
这是我在这里的第一篇文章,我想在 stackoverflow 上向大家问好 :)
好的,欢迎已经出现,现在我指定我遇到的问题。我有一个 QGraphicsView 小部件,我想显示两张不透明的图像,但我的代码不起作用,我不知道是什么原因:/
QGraphicsScene *scenaWynikowa = new QGraphicsScene(ui->graphicsViewWynik);
ui->graphicsViewWynik->setScene(scenaWynikowa);
ui->graphicsViewWynik->fitInView(scenaWynikowa->itemsBoundingRect(), Qt::KeepAspectRatio);
//wyświetlenie zdjęcia nr 1
QImage obraz1(s1);
obraz1.scaled(QSize(541,541), Qt::IgnoreAspectRatio, Qt::FastTransformation);
update();
resize(541, 541);
QPixmap mapaPikseli1(n1);
QGraphicsPixmapItem *pixmapItem1 = scenaWynikowa->addPixmap(mapaPikseli1);
QGraphicsOpacityEffect poziomPrzezroczystosci1;
poziomPrzezroczystosci1.setOpacity(0.5);
pixmapItem1->setGraphicsEffect(&poziomPrzezroczystosci1);
//wyświetlenie zdjęcia nr 2
QImage obraz2(s2);
obraz2.scaled(QSize(541,541), Qt::IgnoreAspectRatio, Qt::FastTransformation);
update();
resize(541, 541);
QPixmap mapaPikseli2(n2);
QGraphicsPixmapItem *pixmapItem2 = scenaWynikowa->addPixmap(mapaPikseli2);
QGraphicsOpacityEffect poziomPrzezroczystosci2;
poziomPrzezroczystosci2.setOpacity(0.5);
pixmapItem2->setGraphicsEffect(&poziomPrzezroczystosci2);
pixmapItem2->moveBy(0, 0);
ui->graphicsViewWynik->show();
对不起,不是英文变量的名称,但对我来说更方便。如果您愿意,我可以解释什么以及为什么变量具有该名称:) 也许有人发现这段代码有错误并向我解释我的代码的问题在哪里以及如何解决?
编辑:这是我的新代码。当我在 QGraphicsView 上移动 pix2 的位置时,我可以看到两个图像(pix2 在 pix1 下)并且效果很好,但是图像应该具有不透明度级别以产生扩散效果。我该怎么做?
【问题讨论】:
标签: c++ image qt opacity qgraphicsview