主要用到函數說明:
IMxDrawLayerTableIterator::Step
得到層表中的圖層對象。詳細說明如下:
參數 | 說明 |
[in,defaultvalue(TRUE) ] VARIANT_BOOL forward | 爲ture向前移動一位,爲false向後移動位 |
[in,defaultvalue(TRUE) ] VARIANT_BOOL skipDeleted | 是否跳過刪除的對象 |
js中實現代碼說明:
function OpenAllLayer() { var database = mxOcx.GetDatabase(); //返回數據庫中的層表對象 var spLayerTable = database.GetLayerTable(); //創建一個遍歷層表中所有圖層的遍歷器 var spIter = spLayerTable.NewIterator(); //移動當前遍歷器位置 for(;!spIter.Done();spIter.Step(true,true)) { //返回遍歷器當前位置的記錄 var spLayerRec = spIter.GetRecord(); var sName = spLayerRec.Name; var layerRec=spLayerTable.GetAt(sName,false); if(layerRec) { layerRec.IsOff = false; alert("成功顯示圖層"); } } }