亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? exampleapplet.java

?? openmap java寫的開源數(shù)字地圖程序. 用applet實(shí)現(xiàn),可以像google map 那樣放大縮小地圖.
?? JAVA
字號(hào):
// **********************************************************************
// 
// <copyright>
// 
//  BBN Technologies
//  10 Moulton Street
//  Cambridge, MA 02138
//  (617) 873-8000
// 
//  Copyright (C) BBNT Solutions LLC. All rights reserved.
// 
// </copyright>
// **********************************************************************
// 
// $Source: /cvs/distapps/openmap/src/openmap/com/bbn/openmap/plugin/esri/ExampleApplet.java,v $
// $RCSfile: ExampleApplet.java,v $
// $Revision: 1.2.2.2 $
// $Date: 2005/08/09 21:17:48 $
// $Author: dietrick $
// 
// **********************************************************************

package com.bbn.openmap.plugin.esri;

import java.awt.BorderLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.net.URL;
import java.util.Properties;
import java.util.Vector;

import javax.swing.JApplet;
import javax.swing.JButton;
import javax.swing.JCheckBox;
import javax.swing.JFrame;
import javax.swing.JOptionPane;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.ListSelectionModel;
import javax.swing.event.ListSelectionEvent;
import javax.swing.event.ListSelectionListener;

import com.bbn.openmap.LatLonPoint;
import com.bbn.openmap.Layer;
import com.bbn.openmap.LayerHandler;
import com.bbn.openmap.MapBean;
import com.bbn.openmap.MouseDelegator;
import com.bbn.openmap.dataAccess.shape.DbfTableModel;
import com.bbn.openmap.dataAccess.shape.EsriGraphicList;
import com.bbn.openmap.event.NavMouseMode;
import com.bbn.openmap.event.SelectMouseMode;
import com.bbn.openmap.gui.OMToolSet;
import com.bbn.openmap.gui.Tool;
import com.bbn.openmap.gui.ToolPanel;
import com.bbn.openmap.layer.GraticuleLayer;
import com.bbn.openmap.omGraphics.OMGraphic;

/**
 * ExampleApplet is an example of how to use the EsriLayer in a
 * JApplet. When the user clicks on the "Add Layers" button, three
 * sets of shape files are streamed from a web server to the clients
 * web browser. After the shape files have been streamed to the
 * client's browser, the user may click on the "View Table" button.
 * Clicking this button will display a new JFrame containing a JTable.
 * This JTable will contain data from a corresponding layer's .dbf
 * file. To enable the user to run this applet as an application the
 * user may check off a box reading "Running Locally". Checking this
 * box, will cause the applet to load files from the local file
 * system.
 * 
 * @author Doug Van Auken
 */
public class ExampleApplet extends JApplet {
    private MapBean _mapBean = null;
    private Layer _layers[] = null;
    private LayerHandler _layerHandler = null;
    private OMToolSet _omts = null;
    private ToolPanel _toolPanel = null;
    private MouseDelegator _mouseDelegator = null;

    private JButton _cmdAddLayers = null;
    private JButton _cmdShowTable = null;

    private JCheckBox _runningLocally = null;

    /*
     * Contructor.
     */
    public ExampleApplet() {
        _mapBean = new MapBean();
        _toolPanel = new ToolPanel();
        _omts = new OMToolSet();
        _omts.findAndInit(_mapBean);
        _mouseDelegator = new MouseDelegator(_mapBean);

        NavMouseMode nmm = new NavMouseMode();
        SelectMouseMode smm = new SelectMouseMode();
        _mouseDelegator.addMouseMode(nmm);
        _mouseDelegator.addMouseMode(smm);

        setupUI();
    }

    /**
     * Provides a dialog box from which the user can pick the layer
     * that they would like to view table data for
     * 
     * @return The layer that user has selected
     */
    private EsriLayer pickEsriLayer() {
        Layer[] layers = _layerHandler.getLayers();
        Vector vector = new Vector();
        for (int n = 0; n <= layers.length - 1; n++) {
            String name = layers[n].getName();
            vector.add(name);
        }
        Object[] objects = vector.toArray();
        String selectedValue = (String) JOptionPane.showInputDialog(null,
                "Choose one",
                "Input",
                JOptionPane.INFORMATION_MESSAGE,
                null,
                objects,
                objects[0]);

        for (int n = 0; n <= layers.length - 1; n++) {
            String name = layers[n].getName();
            if (name.equalsIgnoreCase(selectedValue)) {
                return (EsriLayer) layers[n];
            }
        }
        return null;
    }

    /**
     * Sets up the user interface.
     */
    public void setupUI() {
        _runningLocally = new JCheckBox("Running Locally");

        getContentPane().setLayout(new BorderLayout());
        setSize(640, 480);
        _mapBean.setCenter(new LatLonPoint(43.0f, -95.0f));
        _mapBean.setScale(120000000f);
        _layers = new Layer[1];

        _toolPanel = new ToolPanel();

        Properties props = new Properties();
        props.put("prettyName", "Graticule");
        props.put("showRuler", "true");
        props.put("show1And5Lines", "true");
        props.put("threshold", "2");
        props.put("10DegreeColor", "FF000000");
        props.put("5DegreeColor", "FF009900");
        props.put("1DegreeColor", "FF003300");
        props.put("equatorColor", "FFFF0000");
        props.put("dateLineColor", "FF000099");
        props.put("specialLineColor", "FF000000");
        props.put("textColor", "FF000000");
        GraticuleLayer graticule = new GraticuleLayer();
        graticule.setProperties(props);
        _layers[0] = graticule;

        //Finish setting up the GUI.
        _layerHandler = new LayerHandler(_layers);
        _layerHandler.addLayerListener(_mapBean);

        //_omts.add(_mouseModePanel);;

        _cmdAddLayers = new JButton("Add Layers");
        _cmdAddLayers.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent event) {
                try {
                    EsriLayer rivers = null;
                    EsriLayer cities = null;
                    EsriLayer states = null;
                    URL dbf = null;
                    URL shx = null;
                    URL shp = null;

                    if (_runningLocally.isSelected()) {
                        dbf = new URL("file://localhost/c:/data/rivers.dbf");
                        shp = new URL("file://localhost/c:/data/rivers.shp");
                        shx = new URL("file://localhost/c:/data/rivers.shx");
                        rivers = new EsriLayer("Southwest", dbf, shp, shx);

                        dbf = new URL("file://localhost/c:/data/cities.dbf");
                        shp = new URL("file://localhost/c:/data/cities.shp");
                        shx = new URL("file://localhost/c:/data/cities.shx");
                        cities = new EsriLayer("Cities", dbf, shp, shx);

                        dbf = new URL("file://localhost/c:/data/states.dbf");
                        shp = new URL("file://localhost/c:/data/states.shp");
                        shx = new URL("file://localhost/c:/data/states.shx");
                        states = new EsriLayer("States", dbf, shp, shx);
                    } else {
                        dbf = new URL(getCodeBase(), "resources/rivers.dbf");
                        shp = new URL(getCodeBase(), "resources/rivers.shp");
                        shx = new URL(getCodeBase(), "resources/rivers.shx");
                        rivers = new EsriLayer("Rivers", dbf, shp, shx);

                        dbf = new URL(getCodeBase(), "resources/cities.dbf");
                        shp = new URL(getCodeBase(), "resources/cities.shp");
                        shx = new URL(getCodeBase(), "resources/cities.shx");
                        cities = new EsriLayer("Cities", dbf, shp, shx);

                        dbf = new URL(getCodeBase(), "resources/states.dbf");
                        shp = new URL(getCodeBase(), "resources/states.shp");
                        shx = new URL(getCodeBase(), "resources/states.shx");
                        states = new EsriLayer("States", dbf, shp, shx);
                    }

                    _layerHandler.addLayer(rivers);
                    _layerHandler.addLayer(cities);
                    _layerHandler.addLayer(states);
                    _cmdAddLayers.setEnabled(false);
                    _cmdShowTable.setEnabled(true);
                } catch (Exception exception) {
                    exception.printStackTrace();
                }
            }
        });

        _cmdShowTable = new JButton("View Table");
        _cmdShowTable.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent event) {
                Layer[] layers = _layerHandler.getMapLayers();
                if (layers.length >= 4) {
                    EsriLayer layer = pickEsriLayer();
                    showTable(layer);
                    _cmdAddLayers.setEnabled(false);
                }
            }
        });

        _toolPanel.add(_runningLocally);
        _toolPanel.add(_cmdAddLayers, 0);
        _toolPanel.add(_cmdShowTable, 1);
        _toolPanel.add((Tool) _omts);

        getContentPane().add(_toolPanel, BorderLayout.NORTH);
        getContentPane().add(_mapBean, BorderLayout.CENTER);
        setVisible(true);
    }

    /**
     * Displays a new window containing the tabular data for the
     * passed-in layer
     * 
     * @param layer The layer whose data is to be displayed
     */
    public void showTable(final EsriLayer layer) {
        JFrame frame = new JFrame("Table");
        DbfTableModel model = layer.getModel();
        JTable table = new JTable(model);
        JScrollPane pane = new JScrollPane(table);
        frame.getContentPane().add(pane, BorderLayout.CENTER);

        ListSelectionModel lsm = table.getSelectionModel();
        lsm.addListSelectionListener(new ListSelectionListener() {
            public void valueChanged(ListSelectionEvent e) {
                //Ignore extra messages.
                if (e.getValueIsAdjusting()) {
                    return;
                }
                ListSelectionModel lsm2 = (ListSelectionModel) e.getSource();
                if (lsm2.isSelectionEmpty()) {
                    //no rows are selected
                } else {
                    int index = lsm2.getMinSelectionIndex();
                    EsriGraphicList list = layer.getEsriGraphicList();
                    OMGraphic graphic = list.getOMGraphicAt(index);
                    graphic.select();
                    list.generate(_mapBean.getProjection());
                    layer.repaint();
                }
            }
        });
        frame.setSize(400, 300);
        frame.setVisible(true);
    }

    /**
     * Main method to facilitate testing and to run as stand alone
     * application.
     */
    public static void main(String args[]) {
        ExampleApplet example = new ExampleApplet();
        JFrame frame = new JFrame();
        frame.getContentPane().add(example);
        frame.setSize(800, 600);
        frame.setVisible(true);
    }
}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久女同互慰一区二区三区| 日韩精品视频网| 国产欧美视频一区二区| 日本一区二区三区四区在线视频| 亚洲一区二区三区影院| www.欧美日韩| 久久精品人人爽人人爽| 精品在线观看免费| 欧美日韩另类国产亚洲欧美一级| 国产精品系列在线| 高清在线成人网| 久久免费精品国产久精品久久久久 | 91亚洲国产成人精品一区二区三| 精品国产99国产精品| 亚洲成av人影院| 久久国产尿小便嘘嘘尿| 久久久青草青青国产亚洲免观| 国产69精品久久99不卡| 蜜桃av一区二区三区电影| 国产精品区一区二区三| 欧美精品久久一区二区三区| 日韩av在线播放中文字幕| 成人自拍视频在线| 亚洲丝袜自拍清纯另类| 91久久精品网| 成人综合在线网站| 99久久精品99国产精品| 欧美一区二区大片| 播五月开心婷婷综合| 国产精品综合av一区二区国产馆| 日本女人一区二区三区| 午夜欧美大尺度福利影院在线看| 亚洲女女做受ⅹxx高潮| 国产精品高清亚洲| 国产精品久久久久久久久搜平片 | 久久99精品久久久久久国产越南 | 久99久精品视频免费观看| 麻豆精品一区二区三区| 日韩专区中文字幕一区二区| 亚洲va韩国va欧美va| 石原莉奈在线亚洲二区| 天天影视网天天综合色在线播放| 午夜久久久久久电影| 婷婷中文字幕综合| 蜜臂av日日欢夜夜爽一区| 久久99精品久久只有精品| 九一九一国产精品| 国产精品中文有码| 丁香婷婷综合网| 99国产一区二区三精品乱码| 一本久久a久久精品亚洲| 色婷婷av一区二区三区大白胸| 色婷婷av一区二区三区gif| 欧美性大战久久久久久久| 欧美日韩亚洲综合一区| 日韩精品一区国产麻豆| 久久久精品免费免费| 国产精品无圣光一区二区| 日韩理论片在线| 午夜精品一区二区三区免费视频| 日韩福利电影在线观看| 国产一区视频网站| 91亚洲国产成人精品一区二三| 欧美性xxxxx极品少妇| 欧美一级搡bbbb搡bbbb| 国产亚洲1区2区3区| 成人免费小视频| 日韩av在线发布| 国产一区二区导航在线播放| 不卡的av中国片| 欧美日韩一区二区欧美激情| 精品国产第一区二区三区观看体验| 久久久久久久性| 一区二区三区精品视频| 麻豆视频一区二区| 99视频国产精品| 这里只有精品免费| 国产女同性恋一区二区| 亚洲午夜日本在线观看| 激情国产一区二区| 欧洲色大大久久| 欧美精品一区二区三区蜜桃视频| 1024精品合集| 激情综合一区二区三区| 91视频com| 精品理论电影在线| 亚洲激情校园春色| 国内精品免费**视频| 91网上在线视频| 欧美成va人片在线观看| 亚洲一区二区三区视频在线 | 96av麻豆蜜桃一区二区| 欧美一区二区三区影视| 日韩一区日韩二区| 国产一区二区三区观看| 欧美日韩久久不卡| 国产精品美女久久福利网站 | 成人久久18免费网站麻豆| 欧美一二三在线| 一区二区三区欧美日| 国产麻豆视频精品| 欧美精品xxxxbbbb| 亚洲精选在线视频| 成人美女在线视频| 亚洲精品中文字幕在线观看| 国产高清不卡二三区| 91精品黄色片免费大全| 亚洲三级电影网站| 国产suv精品一区二区6| 精品久久人人做人人爱| 日日骚欧美日韩| 欧美主播一区二区三区| 亚洲欧洲日韩av| 国产精品1024| 欧美成人一区二区三区在线观看 | 国产99久久久国产精品潘金| 日韩三级免费观看| 日韩激情中文字幕| 欧美日韩一区三区| 亚洲最新在线观看| 91在线精品秘密一区二区| 亚洲国产高清aⅴ视频| 国产一区二区三区免费播放| 精品va天堂亚洲国产| 美女视频一区二区三区| 在线综合视频播放| 午夜久久福利影院| 91麻豆精品国产91久久久资源速度 | 色综合久久综合网97色综合| 中文字幕亚洲欧美在线不卡| 成人在线一区二区三区| 国产精品无码永久免费888| 国产精品18久久久久久久网站| 精品对白一区国产伦| 国产一区在线视频| 国产视频一区二区三区在线观看| 国产精华液一区二区三区| 国产欧美日韩在线观看| eeuss鲁片一区二区三区| 中文字幕在线观看一区二区| av资源网一区| 夜夜爽夜夜爽精品视频| 欧美人xxxx| 精品一区二区免费在线观看| 精品欧美一区二区久久| 国产成人免费在线观看不卡| 国产精品毛片久久久久久久| 91浏览器在线视频| 亚洲第一成年网| 欧美一区中文字幕| 国产在线日韩欧美| 中文字幕一区av| 欧美人与性动xxxx| 九一久久久久久| 亚洲欧洲韩国日本视频| 欧美午夜视频网站| 另类小说视频一区二区| 久久久久久久久久久久久夜| av亚洲精华国产精华| 亚洲一区在线观看免费观看电影高清| 欧美日韩国产三级| 久久 天天综合| 亚洲色图色小说| 在线播放/欧美激情| 韩国欧美一区二区| 亚洲啪啪综合av一区二区三区| 91九色02白丝porn| 经典三级一区二区| 亚洲三级小视频| 精品区一区二区| 色综合久久综合网97色综合| 蜜桃精品视频在线| 综合精品久久久| 日韩欧美一区在线| 成人av网址在线观看| 天天爽夜夜爽夜夜爽精品视频 | 亚洲电影一级黄| 精品久久久久99| 色成年激情久久综合| 久久99精品国产麻豆婷婷洗澡| 中文字幕色av一区二区三区| 欧美一级理论片| 91麻豆免费视频| 久久99国内精品| 洋洋av久久久久久久一区| 久久精品一区蜜桃臀影院| 欧美在线一区二区三区| 风间由美一区二区av101| 五月天激情综合| 1024精品合集| 欧美极品美女视频| 日韩欧美中文字幕公布| 91久久国产最好的精华液| 国产成人精品影院| 成人丝袜高跟foot| 久久99国产精品尤物| 性欧美大战久久久久久久久| 国产精品久久久久久久久动漫| 日韩欧美激情在线| 欧美亚洲日本国产|