📄 myfirstmap.java
字号:
package barchant;import java.io.OutputStream;import java.awt.*;import java.awt.event.*;import javax.swing.*;import com.mapinfo.mapj.*;import com.mapinfo.mapdefcontainer.*;import com.mapinfo.mapxtreme.client.MapXtremeImageRenderer;import com.mapinfo.util.DoubleRect;import com.mapinfo.xmlprot.mxtj.ImageRequestComposer;import java.util.*;import com.mapinfo.xmlprot.mxtj.SvgConditions;/* 该实例显示了两种加载地图定义的方法,一种是从本地的.mdf地图定义文件中加载,另一种是从数据库的mapdefinition表中加载 */public class MyFirstMap extends JFrame { JPanel contentPane; BorderLayout borderLayout1 = new BorderLayout(); public MapJ myMap; //Construct the frame public MyFirstMap() { enableEvents(AWTEvent.WINDOW_EVENT_MASK); try { jbInit(); //创建MapJ对象 myMap=new MapJ(); //1.加载地图定义,要想加载地图定义必须先要创建MapDefContainer,下面是本地文件加载的例子,成功了 //MapDefContainer mdc=new FileMapDefContainer("d:\\program files\\MapInfo\\MapXtreme-4.7.0\\examples\\server\\data\\local"); //2.下面是数据库的例子,从mapdefinition表中获得地图定义,成功 MapDefContainer mdc=new OraSoMapDefContainer("oracle.jdbc.driver.OracleDriver","jdbc:oracle:thin:@172.23.206.229:1521:lk","system","manager"); myMap.loadMapDefinition(mdc,"asia"); //设置地图大小 myMap.setDeviceBounds(new DoubleRect(0, 0, 800, 600)); String mapxtremeServletUrl="http://localhost:8088/mapxtreme47/mapxtreme"; //8888888888888888888888 Map eventMap=new HashMap(); eventMap.put("onmouseover", "OnMouseOver_Event"); // create an SvgConditions object SvgConditions svgConditions = new SvgConditions(eventMap); //产生背景图片 ImageRequestComposer imageRC=ImageRequestComposer.create(myMap,256,Color.red,"image/svg+xml"); //创建MapXtremeImageRenderer类,该类就是用于与servlet打交道 MapXtremeImageRenderer renderer=new MapXtremeImageRenderer(mapxtremeServletUrl); imageRC.setSvgConditions(svgConditions); //从servlet上下载空间数据 renderer.render(imageRC); renderer.toFile("e:\\songqian.gif"); } catch(Exception e) { e.printStackTrace(); } } //Component initialization private void jbInit() throws Exception { contentPane = (JPanel) this.getContentPane(); contentPane.setLayout(borderLayout1); this.setSize(new Dimension(400, 300)); this.setTitle("Frame Title"); } //Overridden so we can exit when window is closed protected void processWindowEvent(WindowEvent e) { super.processWindowEvent(e); if (e.getID() == WindowEvent.WINDOW_CLOSING) { System.exit(0); } } public static void main(String args[]){ MyFirstMap map=new MyFirstMap(); }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -