您好我想用QGraphicsScene缩小文字字体。我试试这个:
QFont * f = new QFont;
f->setPointSize(7);
tt->setFont(f);
然而,我明白了:
错误:C2664:'void QGraphicsTextItem :: setFont(const QFont&)': 不能将参数1从'QFont *'转换为'const QFont&'原因: 不能从'QFont *'转换为'const QFont'没有构造函数可以 采取源类型,或构造函数重载决议是模糊的
你能帮助我吗?
答案 0 :(得分:0)
您需要解除指针以获取对象。然后setFont
可以使用此对象:
tt->setFont(*f);
请务必明确delete
f
。如果您有权访问C ++ 11,我建议使用std::unique_ptr
而不是new
的原始指针。
更好的是,如果您不需要在范围之外使用f
,那么只需创建一个本地对象:
QFont f;
f->setPointSize(7);
tt->setFont(f);