【发布时间】:2017-08-04 22:44:29
【问题描述】:
这是我的代码:
for (qint32 i = 0; i < leftF.size(); i++){
QPointF p = leftF.at(i).screenpos;
// Drawing the dot
painter.setPen(QPen(Qt::blue));
painter.drawEllipse(p,R,R);
// Drawing a line
painter.drawLine(p.x(),p.y(),p.x(),p.y()-lineH);
// Drawing the text.
painter.drawText(p.x(),p.y()-lineH,2*R,2*R,Qt::AlignCenter,QString::number(i));
// Duration position.
painter.rotate(-90);
painter.drawText(p.x(),p.y()-lineH,4*R,2*R,Qt::AlignCenter,QString::number(leftF.at(i).dur));
painter.rotate(90);
}
问题是我需要这一行的文字:
painter.drawText(p.x(),p.y()-lineH,4*R,2*R,Qt::AlignCenter,QString::number(leftF.at(i).dur));
以 90 度角打印。但是看看这个解决方案:
How to rotate text for drawText?
我做的是我应该做的,但是它不起作用,因为文本根本没有出现在屏幕上。
如何在我想要的位置绘制旋转的文本? (在本例中为 p.x(),p.y()-lineH)
【问题讨论】: