Qt 图表QCharts图例Legend介绍


目的:介绍Qt中图表可以达到的一些效果,可以把我们的项目做的高大上。

此博文主要介绍图表说明Legend的一些设置,来源示例Legend和LegendMarker,位于\Examples\Qt5.9.4\charts\

Legend主要实现对图表说明的编辑,添加删除Bar,图表说明的位置,以及图表说明字体的设置

LegendMarker主要实现图表说明与图表的对应关系,点击图表说明可以显示/隐藏相应的图表,上面图中隐藏了line1和line3

1. 放置位置
附着图表 m_chart>legend()>attachToChart();

不附着图表 m_chart>legend()>detachFrChart();

位于图表上方 m_chart>legend()>setAlignment(Qt::AlignTop);

位于图表下方 m_chart>legend()>setAlignment(Qt::AlignBott);

位于图表左侧 m_chart>legend()>setAlignment(Qt::AlignLeft);

位于图表右侧 m_chart>legend()>setAlignment(Qt::AlignRight);

2. 设置字体

1 QFont font = m_chart>legend()>font(); 2 font.setBold(!font.bold());//是否加粗 3 font.setItalic(!font.italic());//是否斜体 4 font.setPointSizeF(m_fontSize>value());//设置字体大小 5 m_chart>legend()>setFont(font);

3. 附着图表时设置边框

1 m_chart>legend()>setGeetry(QRectF(x,y,width,height)); 2 m_chart>legend()>update();

4. 关联图表说明与图表

实现效果:点击图表说明时,相应的图表被显示或隐藏。

建立信号QLegendMarker::clicked槽handleMarkerClicked关系

1 const auto markers = m_chart>legend()>markers(); 2 for (QLegendMarker *marker : markers)

槽函数handleMarkerClicked实现

1 void handleMarkerClicked() 2 52 default: 53 57 } 58 }



上一篇:Qt QML 虚拟键盘(VirtualKeyboard )

下一篇:Qt 开发经验常见问题及优化100条


Qt
Copyright © 2002-2019 k262电脑网 www.k262.cn 皖ICP备2020016292号
温馨提示:部分文章图片数据来源与网络,仅供参考!版权归原作者所有,如有侵权请联系删除!QQ:251442993 热门搜索 网站地图