代码之家  ›  专栏  ›  技术社区  ›  sys463

如何向自定义边形状添加新特性

  •  0
  • sys463  · 技术社区  · 4 年前

    我需要向自定义边缘形状添加一个新属性(它扩展 mxConnector )根据该属性值更改边的颜色。 示例如下:

    function ExecutorEdge()
    {
        mxConnector.call(this);
    };
    mxUtils.extend(ExecutorEdge, mxConnector);
    ExecutorEdge.prototype.customProperties = [
        {name: 'trxSort', dispName: 'Transaction Sort', type: 'enum', defVal:'orig',
            enumList:[
                {val:'orig', dispName:'Original'},
                {val:'info', dispName:'Informational'},
                {val:'doc', dispName:'Documental'}
            ]}
    ];
    
    mxCellRenderer.registerShape('executorEdge', ExecutorEdge);
    

    我设法为扩展的自定义形状做了同样的事情 mxEllipse 但使用Edge时,该属性甚至不会出现在属性表上。

    0 回复  |  直到 4 年前
        1
  •  0
  •   sys463    4 年前

    我的坏,我正在设置我的新形状 endArrow 财产不 shape 。使用有问题的代码描述并按如下方式创建Edge模板可以很好地工作。已成功添加新的自定义属性。

    this.createEdgeTemplateEntry('shape=executorEdge;html=1;', 50, 50, '', 'Executor Link', null, tags)
    
    推荐文章