gpt4 book ai didi

c++ - 如何使用 Qt 插槽中的 QwtPlot 绘图?

转载 作者:太空宇宙 更新时间:2023-11-04 11:23:08 25 4
gpt4 key购买 nike

一天中的好时光!我有一个问题,您可能会觉得这很愚蠢而且显而易见,但我已经在尝试解决这个问题时伤透了脑筋。

我想通过按下 QPushButton 来绘制一些曲线。我写了插槽,接在这个按钮对应的信号上。但是当我点击它时,绘图上没有任何反应,尽管这个函数执行了,并且可以在调试器和 qDebug() 输出上查看。

另一方面,如果你直接调用这个函数,而不是作为一个槽,它工作得很好。唯一的区别是调用方法:在第一种情况下作为插槽,在第二种情况下作为方法。

一些代码示例:

//Slot 
void MainWindow::buttonClick()
{
qDebug() << "Enter";
XRDDataReader *xrdr = new XRDDataReader();
xrdr->fromFile("/home/hippi/Документы/Sources/Qt/49-3.xy");

ui->plot->plotXRD(xrdr->xValues(), xrdr->yValues());
qDebug() << "Quit";
}

void Plotter::plotXRD(QVector<double> x, QVector<double> y)
{
QwtPlotCurve *curve = new QwtPlotCurve();
curve->setRenderHint
( QwtPlotItem::RenderAntialiased, true );
curve->setPen(Qt::black, 2);

curve->setSamples(x,y);
curve->attach(mainPlot);
}

最佳答案

只要未启用自动重新绘图,您就必须调用重新绘图来进行更改。

关于c++ - 如何使用 Qt 插槽中的 QwtPlot 绘图?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27610908/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com