在QCustomPlot上绘制文本

时间:2013-12-07 17:15:32

标签: qt qpainter drawtext qcustomplot

我在QCustomPlot小部件上绘制文字时遇到问题。 A在我的小部件中有几个图形,每个图形都带有关于其名称中的振幅的信息。当用户点击光标位置的图形时,A想要显示该文本。我有这个代码,但它没有工作,虽然当我启用MessageBox时,值显示良好:

QCustomPlot *nahlad; //graph
connect(nahlad,    SIGNAL(plottableClick(QCPAbstractPlottable*,QMouseEvent*)), 
   this, SLOT(kliknutieNaGraf(QCPAbstractPlottable*,QMouseEvent*)));
...   

void resultWindow::kliknutieNaGraf(QCPAbstractPlottable *a, QMouseEvent *b) 
{
    QPainter *paint = new QPainter(); paint->drawText( QPoint(b->x(),b->y()), 
        QString("Amplituda je: %1").arg(a->name()) );
    //QMessageBox::about(NULL, QString("Info"), QString("%1").arg(a->name()));
}

1 个答案:

答案 0 :(得分:2)

如果我正确理解你的代码,你似乎直接用QPainter绘制文本,但没有效果(QPainter需要某处绘制)。

为什么不使用内置QCPItemText?关于如何使用它有一个nice tutorial

如果您需要进一步说明或一段代码,请告诉我。

S pozdravom,Pavel