2021-7-2

本文介绍了一种在图形交互中监听画布上节点和边的方法。当鼠标进入节点时,会显示删除按钮,并调整端点的半径;离开时,这些工具消失。同时,单击节点时触发编辑名称的事件。该实现涉及图形库的事件监听、元素状态改变及用户交互功能。
摘要由CSDN通过智能技术生成

70

写一下画布的监听事件。

listenGraph () {
      this.graph.on('cell:mouseenter', ({ cell }) => {
        if (cell.isNode()) {
          cell.addTools([
            {
              name: 'button-remove',
              args: {
                x: 0,
                y: 0,
                offset: { x: 5, y: 5 }
              }
            }
          ])
          const portid = cell.port.ports[0].id
          cell.setPortProp(portid, 'attrs/circle', { r: 4 })
        } else {
          cell.addTools('button-remove')
        }
      })
      this.graph.on('cell:mouseleave', ({ cell }) => {
        cell.removeTools()
      })
      this.graph.on('cell:click', ({ cell, e }) => {
        if (cell.isNode()) {
          this.createDiv({ cell, e })
        }
      })
    },

鼠标进入点和边的时候出现移除的叉叉,离开的时候取消出现。因为想在stenci里面的图像没有链接桩,将点放进画布的时候才出现链接桩,所以stencil创建实例的时候设置port的半径为0,mouseenter的时候半径为4。还有单击编辑名字的事件。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值