Qt折线的显示与隐藏

C++ Qt绘制图表,用鼠标点击图表的series的名称,实现图表中线条隐藏与显示

 

private slots:
    void onLegendMarkerClicked() {
        bool checked = false;
        qDebug() << "" << checked;
        QLegendMarker* marker = qobject_cast<QLegendMarker*>(sender());
        if (marker) {
            QLineSeries* series = qobject_cast<QLineSeries*>(marker->series());
            if (series) {
                if (series->isVisible())
                {
                    series->setVisible(false);
                }
                else 
                {
                    series->setVisible(true);
                }
                
            }
            marker->setVisible(true);
        }
    }

 

// 连接图例标记的点击事件
for (QLegendMarker* marker : chart->legend()->markers()) {
    qDebug()<<""<<marker->series()->name();
    connect(marker, SIGNAL(clicked()), this, SLOT(onLegendMarkerClicked()));
}

 

e6de1435633a971ed9a5119fdf67c7c3

 

 

511d1125736df84a556798c7d37713a0

 

 

e3683671cdf1afaedc02af820c8da537

 

65edfc1f8e8f6b5afd872a2090226f81

 

 

#############################

posted @ 2025-12-19 23:21  西北逍遥  阅读(3)  评论(0)    收藏  举报