QChart笔记2: 添加鼠标悬停显示和格式处理

本文介绍如何在QtCharts中实现鼠标悬停时显示坐标轴值的功能,包括设置日期格式化的X轴和数值型Y轴,并通过Lambda表达式处理悬停事件。

笔记1。显示了线后,我想在鼠标悬停在线上的时候,显示所在点的Y轴的值。像下面图这样。

实现方法是这样的。首先继承QChartView类,在类里面添加一个槽函数,用来连接LineSeries上的悬停信号。

QObject::connect(series, SIGNAL(hovered(const QPointF&,bool)), chartView, SLOT(showPos(const QPointF&, bool)));
class ChartView : public QChartView
{
    Q_OBJECT
public:
    ChartView(QChart *chart, QWidget *parent = 0);
public slots:
    void showPos(const QPointF&, bool);
};

void ChartView::showPos(const QPointF& point, bool state)
{   
    QPoint tempPoint;
    tempPoint.setX(qRound(point.x()));
    tempPoint.setY(qRound(point.y()));
    if (state && static_cast<QSplineSeries*>(this->chart()->series().at(0))->points().contains(tempPoint)) {
        QToolTip
评论 11
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值