所以我有一个名为 xarray 的 QVector
QVector< QString > xarray;
现在我要绘制数组
void MainWindow::paintEvent( QPaintEvent* e )
{
QPainter painter(this);
for(int i = 0; i < 5; i++)
{
qDebug() << "\r\narr : " <<QList<QString>::fromVector(xarray);
painter.drawEllipse(X, 10, 100, 100);
}
}
如何将数组提供给我的 x comp?
我试过了
painter.drawEllipse(xarray[i], 10, 100, 100);
但是没有调用QPainter
的函数。
最佳答案
一个简单的实现可能是这样的:
void MainWindow::paintEvent(QPaintEvent *e)
{
QPainter painter(this);
for(int i = 0; i < 5; i++)
{
painter.drawEllipse(xarray[i].toFloat(), 10.0, 100.0, 100.0);
}
}
在将其用作drawEllipse
的参数之前,您需要将QString
值转换为float
值
但在实际代码中,我强烈建议确保 xarray
中的值在使用之前可以转换为 float
。
关于c++ - qt c++ qpainter 与 QVector,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29652178/