首页 > 代码库 > QT5中运行QT4场景程序 QGraphicsItem *QGraphicsScene::itemAt 函数报错的解决
QT5中运行QT4场景程序 QGraphicsItem *QGraphicsScene::itemAt 函数报错的解决
int main(int argc,char* argv[ ])
{
QApplication app(argc,argv);
//新建场景
QGraphicsScene scene;
//创建矩形图形项
QTransform transform; //QT5添加
transform.rotate(+0.0);//QT5添加
QGraphicsRectItem *item = new QGraphicsRectItem(0, 0, 100, 100);
//将图形项添加到场景中
scene.addItem(item);
//输出(50, 50)点处的图形项
qDebug() << scene.itemAt(50, 50,transform); // QT5添加 transform
//为场景创建视图
QGraphicsView view(&scene);
//设置场景的前景色
view.setForegroundBrush(QColor(255, 255, 255, 100));
//设置场景的背景图片
view.setBackgroundBrush(QPixmap("../myScene/background.png"));
view.resize(400, 300);
view.show();
return app.exec();
}
qt4中函数QGraphicsItem *QGraphicsScene::itemAt(qreal x, qreal y)
qt5中函数发生了变化
QGraphicsItem *QGraphicsScene::itemAt(qreal x, qreal y, const QTransform &deviceTransform) const
This is an overloaded function.
Returns the topmost visible item at the position specified by (x, y), or 0 if there are no items at this position.
deviceTransform is the transformation that applies to the view, and needs to be provided if the scene contains items that ignore transformations.
This convenience function is equivalent to calling itemAt(QPointF(x, y), deviceTransform).
Note: See items() for a definition of which items are considered visible by this function.
This function was introduced in Qt 4.6.
QT5中运行QT4场景程序 QGraphicsItem *QGraphicsScene::itemAt 函数报错的解决
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。