【发布时间】:2012-12-11 03:01:47
【问题描述】:
我创建了一个自定义QGraphicsItem。并覆盖boundingRect() 和paint()。
QRectF myTile::boundingRect() const
{
return QRectF(xPos*10, yPos*10, 10, 10);
}
void myTile::paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget)
{
QRectF rec = boundingRect();
int gvi = value * 255;
QColor gv(gvi, gvi, gvi, 255);
QBrush brush(gv);
painter->fillRect(rec, brush);
painter->drawRect(rec);
}
然后我使用addItem() 将项目添加到场景中。现在我想通过它的位置从场景中得到它。我找到了itemAt 函数。但问题是我不知道const QTransform 和deviceTransform 是什么。我应该为QTransform 使用什么?
因为我没有在QGraphicsItem 中实现任何转换。这让我很困惑。
【问题讨论】:
标签: c++ qt qgraphicsitem qgraphicsscene