相关文章推荐
瘦瘦的烤红薯  ·  【JSP EL】<c:if> ...·  11 月前    · 
高大的大熊猫  ·  zabbix ...·  1 年前    · 
风流的人字拖  ·  Android Studio ...·  1 年前    · 
浏览 20
已结题

QGraphicsItem如何检测与鼠标发生碰撞?

场景需求:流程图的中的图形模块,当鼠标(无论是按压还是未按压状态)进入图形某块后,都显示图形模块的各个边中点。

方案一:利用hoverEnterEvent和hoverLeaveEvent两个事件,问题是:当鼠标按压时hoverEnterEvent事件不响应。
方案二:想利用QGraphicsItem->scene()->collidingItems(this),碰撞检测做。问题是:无法知晓是不是跟鼠标发生了碰撞。
方案三:这个方案是最麻烦的。在QGraphicsScene中的mouseMoveEvent事件中,实时检测是不是位于图形模块,然后设置各个边中点可见,如果鼠标移开还得设置不可见,因此这里必须通过成员在保存上次鼠标所在的图形模块指针,非常麻烦!

0

  • 编辑 收藏 删除
  • 追加酬金 (90%的用户在追加酬金后获得了解决方案)

    当前问题酬金

    ¥ 0 (可追加 ¥500)

    支付方式

    余额支付

    余额: ¥ 499

    扫码支付

    提供问题酬金的用户不参与问题酬金结算和分配

    支付即为同意 《付费问题酬金结算规则》

    0 条回答 默认 最新

    查看更多回答(-1条) 报告相同问题?

    问题事件

    • 系统已结题 11月11日
    • 创建了问题 11月3日

    悬赏问题

    • ¥15 无法使用SNMP获取Linux磁盘空间 如何配置TLQ消息中间件(似IBMMQ) 如何使用stm32f103 内部高速时钟作为系统时钟? 关于蒙泰rip 6.1 对2007年江苏省13个地级市进行聚类分析 需要提供二分类问题SVM matlabh或python都行 mysql相同编码的两条数据,两值相加更新到第三个值 Ubuntu 搭建一个局域网文件存储服务器