QML中ChartView的动态加载

本文介绍了在QML中如何动态加载ChartView,包括在QT工程中启用ChartView所需的步骤,如修改.pro文件和main.c文件。文章重点讨论了使用Repeater组件动态创建多个图表,并展示了如何通过设置AbstractAxis调整X轴和Y轴范围,确保新增折线能正确显示。
摘要由CSDN通过智能技术生成

QML中关于ChartView的引用

在使用Qt Creator中默认创建的QML工程是没办法直接使用ChartView的,起码写下这些东西的时是这样的

// 这是一个标准的main.c文件
#include <QGuiApplication>
#include <QQmlApplicationEngine>
int main(int argc, char *argv[])
{
   
    QCoreApplication::setAttribute(Qt::AA_EnableHighDpiScaling);
    
    QGuiApplication app(argc, argv);
    QQmlApplicationEngine engine;
    engine.load(QUrl(QStringLiteral("qrc:/main.qml")));
    if (engine.rootObjects().isEmpty())
        return -1;

    return app.exec();
}

如果想使用ChartView是需要对进行一些修改的

1.默认安装的QT好像是不带QT Charts

在这里插入图片描述
请安装QT时勾选了QT Charts模块(这点存疑,本人在公司一直导入导入不了Charts模块,家里电脑直接可以用,对比发现可能是这里的问题)

2.修改.pro文件

就是修改你的工程文件,在其中的QT += charts,保证chart模块被引用你的工程
在这里插入图片描述

3.修改main.c文件

如果不修改头文件,编译没问题,但运行后会报错崩溃

//加入头文件
#include <QGuiApplication>
#include <QQmlApplicationEngine>
#include <QApplication>//注意头文件
int main(int argc, char *argv[])
{
   
    QCoreApplication::setAttribute(Qt::AA_EnableHighDpiScaling);
    
    QApplication   app(argc,argv);//这是第二个修改的地方
 // QGuiApplication app(argc, argv);

    QQmlApplicationEngine engine;
    engine.load(QUrl(QStringLiteral("qrc:/main.qml")))
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值