如何让一个对象不能选中?
MxDraw网页开发|黄洪辉|2018-07-10 14:47
-
回答:
将不需要选中的实体的所在层锁定,然后设置SelectLockLayer=N,锁定后的图层,不能选中,默认是可以的。
具体实现js代码如下:
//锁定层 function LockeAllLayer() { var winWidth = 440; var winHeight = 140; var winLeft = (screen.width - winWidth) / 2; var winTop = (screen.height - winHeight) / 2 - 20; var str = 'dialogHeight:' + winHeight + 'px;dialogWidth:' + winWidth + 'px;dialogTop:' + winTop + 'px;dialogLeft:' + winLeft + 'px;resizable:yes;center:yes;status:no;' var rt = window.showModalDialog("Gettext.htm?tmp=" + Math.random(), "输入图层名", str); var txt; if (typeof (rt) == "undefined") { return; } else { var arr = rt.split(","); txt = arr[0]; } var database = mxOcx.GetDatabase(); //返回数据库中的层表对象 var layerTable = database.GetLayerTable(); //得到层表中的图层对象 var layerRec = layerTable.GetAt(txt, false); if (layerRec == null) return; //返回图层是否处于关闭状态 layerRec.IsLocked = true; alert("成功锁定图层"); }
-
回答:
注:将IniSet值,设置SelectLockLayer=N。