Here's my code,quite easy.I want to get the value of itemText->position->pixelPosition ();.But why customPlot->axisRect ()->width () equals zero?
resize (800, 800); QHBoxLayout* h_layout = new QHBoxLayout (this); QCustomPlot* customPlot = new QCustomPlot (this); customPlot->resize (600, 600); h_layout->addWidget (customPlot); QCPItemText* itemText = new QCPItemText (customPlot); itemText->setPositionAlignment (Qt::AlignBottom | Qt::AlignHCenter); itemText->setText ("Text Item Demo"); itemText->position->setType (QCPItemPosition::ptAxisRectRatio); itemText->position->setCoords (0.5, 0.5); QPointF pixelPos = itemText->position->pixelPosition (); qDebug () << pixelPos;//output :(0,0) qDebug () << customPlot->axisRect ()->width ();//output :0 int w = customPlot->axisRect ()->width ();//w=0