ArcMap isn't refreshed when using a modal JFileChooser in a Java Add-In.
上次发布: August 25, 2014ArcGIS for Desktop
漏洞 ID 编号
NIM062344
已提交
October 27, 2010
上次修改时间
June 5, 2024
适用范围
ArcGIS for Desktop
找到的版本
10.0
编程语言
Java
操作系统
Windows OS
操作系统版本
2008
状态
Will Not Be Addressed
开发团队已考虑过该问题或请求,并决定不会解决该问题。 问题的“其他信息”部分可能包含进一步说明。
附加信息
We apologize that we were unable to address this issue within the current product support cycle. If the issue continues to affect your work in a supported release, please contact Technical Support.
解决办法
Show a non-modal dialog as with the code below.SwingUtilities.invokeLater(new Runnable() { public void run() { try{ JFileChooser fileChooser = new JFileChooser(); // Create a filter only to show .shp files in file chooser ShapeFileFilter filterSHP = new ShapeFileFilter(); filterSHP.addExtension("shp"); fileChooser.setFileFilter(filterSHP); int returnVal = fileChooser.showOpenDialog(null); if (returnVal == JFileChooser.APPROVE_OPTION) { File file = fileChooser.getSelectedFile(); IFeatureWorkspace workSpace = (IFeatureWorkspace) workspaceFactory.openFromFile(file.getParent(), 0); IFeatureClass featureClass = null; featureClass = workSpace.openFeatureClass(file.getName().substring(0,(file.getName().length()-4))); IFeatureLayer layer = null; layer = new FeatureLayer(); layer.setFeatureClassByRef(featureClass); layer.setName(featureClass.getAliasName()); mxDoc = (IMxDocument) app.getDocument(); mxDoc.getFocusMap().addLayer(layer); mxDoc.getActiveView().partialRefresh(esriViewDrawPhase.esriViewGeography, layer, null); } } catch (Exception e) { e.printStackTrace(); } } });