我在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()));
}
答案 0 :(得分:2)
如果我正确理解你的代码,你似乎直接用QPainter绘制文本,但没有效果(QPainter需要某处绘制)。
为什么不使用内置QCPItemText?关于如何使用它有一个nice tutorial。
如果您需要进一步说明或一段代码,请告诉我。
S pozdravom,Pavel