QGraphicsItem的坐标是相对于它的父Item的,如果该Item无父,那么它的父默认为scene,也就是说无父的Item坐标是相对于scene的,即该Item位于Scene的坐标系统中。
最近在使用图形视图框架的时候碰到一个Item的坐标与预想中不一样的问题。
首先设置窗体的Geometry为(100,100,800,500);
设置Scene的SceneRect为(100,100,500,300);
设置view的Geometry为(100,100,820,520);
然后创建一个无父SimpleTextItem添加到scene中,Item setPos为(100,100);
上代码:
m_scene=new QGraphicsScene(this);
m_scene->setBackgroundBrush(Qt::gray);
m_scene->setSceneRect(100,100,800,500);//pos 位置相对于 parent
QGraphicsSimpleTextItem *simpleTextItem=