qt - 在QGraphicsScene中,我无法获得正确的项目

时间:2010-06-21 16:14:13

标签: qt

我正在尝试创建一个棋盘。所有硬币都是透明的,而电路板则不是。当我尝试使用函数'itemAt'获取被点击的项目时,它总是返回backGround项目(这意味着板)。我怀疑由于硬币是透明的,所以它们没有被选中。

2 个答案:

答案 0 :(得分:2)

我得到了答案。我试图获得event->pos()。这将返回QGraphicsItem坐标中的鼠标单击。所以我应该使用event->scenePos()

现在我正确得到它。

答案 1 :(得分:1)

如果您使用自己的自定义QGraphicsItem,则可能需要覆盖shape()

如果它是普通的QGraphicsPixmapItem并且它有一个alpha蒙版,那么你需要调用setShapeMode()