我有一个自定义的QGraphicsItem,即(除其他外)变更光标移动到张开的手在被点击时,使用如Qt文档中描述的标准程序。 这在过去的两周左右的罚款。 昨天,我改变了一些东西类中。 最显著,我现在直接从QGraphicsPixmapItem代替的QGraphicsItem继承。
在某些时候,我开始得到以下错误(部分我自己的翻译):
C664:参数1从 '的Qt :: CursorShape' 到 'const的QCursor&' 不可能的转换。 源或目标具有不完整的类型。
我现在试图找出为什么我的项目有一个不完整的类型。 不幸的是什么时候这个问题开始发生,我不能追溯。 更改后的基类是我唯一的猜测,但我真的不能想办法如何,这可能是原因。 谷歌搜索的错误后,我发现的例子,其中类的成员是有些界限不清,但我找不到我的声明错误。 所以,这里是标题,如果我错过了什么:
#include <QGraphicsPixmapItem>
class Collection;
class ItemSource;
class PhotoItem : public QGraphicsPixmapItem
{
public:
PhotoItem( QString sourceFilePath, Collection *collection =0, QColor color =Qt::white, qreal size = 80.0);
enum Orientation { portrait, landscape };
QPixmap content();
bool hasContent();
QColor color();
void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget);
QRectF boundingRect() const;
void mousePressEvent(QGraphicsSceneMouseEvent *event);
void mouseMoveEvent(QGraphicsSceneMouseEvent *event);
void mouseReleaseEvent(QGraphicsSceneMouseEvent *event);
void mouseDoubleClickEvent(QGraphicsSceneMouseEvent *event);
private:
qreal _size;
Orientation _orientation;
QPixmap _content;
QColor _color;
Collection *_collection;
ItemSource *_source;
};
如果该文件是正确的,那么有没有导致未定义的类型,我可以检查出任何常见的问题? 也许我甚至在搜索放错了地方?
感谢您的时间,路易丝