c++ - 将 Qwt 图添加到布局时出现段错误

标签 c++ qt segmentation-fault qwt

我尝试使用 Qwt 和 C++ 构建图表演示。我已将以下代码添加到按钮单击处理程序中:

QwtPlot *plot = new QwtPlot(QwtText("Demo"));
plot->setGeometry(0, 0, 100, 100);
QwtPlotCurve curve("Sine");
QVector<double> xs;
QVector<double> ys;
for (double x = 0; x < 100; x++)
{
    xs.append(x);
    ys.append(sin(x));
}
QwtPointArrayData *series = new QwtPointArrayData(xs, ys);
curve.setData(series);
curve.attach(plot);
plot->show();
QLayout *lay = ui->centralWidget->layout();
lay->addWidget(plot);

它在 addWidget(plot); 处出现段错误。

我做错了什么?

最佳答案

centralWidget 的布局可能为 NULL,或者您尚未初始化 ui(例如调用 setUp())。使用 if(lay == NULL) 检查第一种情况,通过查看您的代码检查第二种情况。

如果第一种情况是正确的,请在 QDesigner 中查看您的 UI 文件并添加布局。

关于c++ - 将 Qwt 图添加到布局时出现段错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9763596/

相关文章:

c++ - 如何将字符串混淆成 C++ 二进制文件?

java - 在 C++ 中使用 Java JAR 库

c++ - 从哪里获得用于面部表情识别的 SVM 训练数据?

qt - 子类化 QGraphicsView 并设置 drawBackground

android - 如何构建 TensorFlow Lite 并在 Qt 项目中使用?

c - 将双指针传递给函数以在 C 中获取字符串

c - 将数组指针传递给要在 C 中的 printf` 中使用的函数

c++ - 终止 C++ 中的线程及其产生的任何进程

c++ - 在 Qt Creator 中应用代码更改的快捷方式是什么?

c - 数组搜索 C 中的段错误