⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 consoleframe.java

📁 基于Java的地图数据管理软件。使用MySQL数据库管理系统。
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
package net.aetherial.gis.garmin;

import java.io.*;
import javax.swing.*;
import java.awt.event.*;
import java.awt.*;
import java.net.*;
import java.sql.*;

import org.apache.batik.swing.*;
import org.apache.batik.swing.gvt.*;
import org.apache.batik.swing.svg.*;
import net.aetherial.gis.excel.*;
import net.aetherial.gis.garmin.*;
import net.aetherial.gis.drawLine.*;
import net.aetherial.gis.database.Connect;
import net.aetherial.gis.surface.ItemValue;
import javax.comm.*;

public class ConsoleFrame extends JFrame implements ActionListener
{
	public static Image icon;

	public static int waypointType = 103;
       public  static boolean noInitialize = true;
	private JMenuItem dlWaypts;
	private JMenuItem dlTracks;
        private JMenuItem dlTracksToExcel;
        private JMenuItem dlWaypointToTracks;
        private JMenuItem dlDrawLine;
        private JMenuItem dlTracksToDatabase;
        private JMenuItem dlTracksFromDatabase;
        private JMenuItem dlPrintDoc;

	JMenuItem ssave;

	private JSVGComponent svgCanvas;
	private String svgURI = Messages.getString("Console.DEFAULT_BG"); //$NON-NLS-1$

	public ConsoleFrame ()
	{
		try
		{
			icon = Toolkit.getDefaultToolkit().createImage (new URL (Messages.getString("Console.DEFAULT_ICON"))); //$NON-NLS-1$
		}
		catch (MalformedURLException e)
		{
			System.out.println (e);
		}

		setTitle (Messages.getString("Console.GPS_UNINITIALIZED")); //$NON-NLS-1$
		setSize (548, 320);
		setIconImage (icon);

		addWindowListener (	new WindowAdapter ()
					{
						public void windowClosing (WindowEvent e)
						{
							//File f = new File (GarminConfiguration.getTmpFile ());

							//if (f.exists () && !(svgURI.startsWith (Messages.getString("Console.JAR")))) //$NON-NLS-1$
        						//	f.delete ();
							System.exit (0);
						}
					} );


		JMenuBar menu = new JMenuBar ();
		setJMenuBar (menu);

		svgCanvas = new JSVGCanvas ();
		//svgCanvas.loadSVGDocument (svgURI);
		svgCanvas.setSize (540, 270);
		// svgCanvas.setEnableImageZoomInteractor (true);

		svgCanvas.addGVTTreeRendererListener (new GVTTreeRendererListener()
			{
     				public void gvtRenderingCompleted(GVTTreeRendererEvent e)
				{
					GarminConfiguration.setSVGDoc (svgCanvas.getSVGDocument ());
     				}

				public void gvtRenderingPrepare (GVTTreeRendererEvent e)
				{
				}

				public void gvtRenderingCancelled(GVTTreeRendererEvent e)
				{
				}

				public void gvtRenderingFailed(GVTTreeRendererEvent e)
				{
				}

				public void gvtRenderingStarted(GVTTreeRendererEvent e)
				{
				}
 			});


		getContentPane ().add (svgCanvas);

		JMenu fileMenu = new JMenu (Messages.getString("Console.MENU_FILE")); //$NON-NLS-1$
		JMenuItem nnew = new JMenuItem (Messages.getString("Console.MENU_NEW")); //$NON-NLS-1$
		nnew.addActionListener (this);
		JMenuItem save = new JMenuItem (Messages.getString("Console.MENU_SAVE_AS")); //$NON-NLS-1$
		save.addActionListener (this);
		ssave = new JMenuItem (Messages.getString("Console.MENU_SAVE_MAP_AS")); //$NON-NLS-1$
		ssave.setEnabled (false);
		ssave.addActionListener (this);
		JMenuItem exit = new JMenuItem (Messages.getString("Console.MENU_EXIT")); //$NON-NLS-1$
		exit.addActionListener (this);
		// fileMenu.add (nnew);
		fileMenu.add (save);
		fileMenu.add (ssave);
		fileMenu.addSeparator ();
		fileMenu.add (exit);

		JMenu gpsMenu = new JMenu (Messages.getString("Console.MENU_GPS")); //$NON-NLS-1$
		dlTracks = new JMenuItem (Messages.getString("Console.MENU_DOWNLOAD_TRACKS")); //$NON-NLS-1$
		dlTracks.addActionListener (this);
		dlTracks.setEnabled (false);
                dlTracksToExcel = new JMenuItem (Messages.getString("Console.MENU_TRACKS_TO_EXCEL")); //$NON-NLS-1$
                dlTracksToExcel.addActionListener (this);
                dlTracksToExcel.setEnabled (false);
                dlWaypointToTracks = new JMenuItem (Messages.getString("Console.MENU_WAYPOINT_INTO_TRACKS")); //$NON-NLS-1$
                dlWaypointToTracks.addActionListener (this);
                dlWaypointToTracks.setEnabled (false);

                dlDrawLine = new JMenuItem (Messages.getString("Console.MENU_DRAWLINE")); //$NON-NLS-1$
                dlDrawLine.addActionListener (this);
                dlDrawLine.setEnabled (true);
                dlTracksToDatabase = new JMenuItem (Messages.getString("Console.MENU_TRACKS_TO_DATABASE")); //$NON-NLS-1$
                dlTracksToDatabase.addActionListener (this);
                dlTracksToDatabase.setEnabled (false);
                dlTracksFromDatabase = new JMenuItem (Messages.getString("Console.MENU_TRACKS_FROM_DATABASE")); //$NON-NLS-1$
                dlTracksFromDatabase.addActionListener (this);
                dlTracksFromDatabase.setEnabled (true);
                dlPrintDoc = new JMenuItem (Messages.getString("Console.MENU_PRINTDOC")); //$NON-NLS-1$
                dlPrintDoc.addActionListener (this);
                dlPrintDoc.setEnabled (true);


		dlWaypts = new JMenuItem (Messages.getString("Console.MENU_DOWNLOAD_WAYPOINTS")); //$NON-NLS-1$
		dlWaypts.addActionListener (this);
		dlWaypts.setEnabled (false);
		JMenuItem initGPS = new JMenuItem (Messages.getString("Console.MENU_INITIALIZE_GPS")); //$NON-NLS-1$
		initGPS.addActionListener (this);
		JMenuItem gpsInfo = new JMenuItem (Messages.getString("Console.MENU_GPS_INFO")); //$NON-NLS-1$
		gpsInfo.addActionListener (this);
		gpsMenu.add (dlTracks);
		gpsMenu.add (dlWaypts);
		gpsMenu.add (initGPS);
                gpsMenu.addSeparator ();
                gpsMenu.add(dlPrintDoc);
                gpsMenu.add(dlTracksToExcel);
                gpsMenu.add (dlWaypointToTracks);
                gpsMenu.add(dlTracksToDatabase);
                gpsMenu.add(dlTracksFromDatabase);
                gpsMenu.add(dlDrawLine);
		gpsMenu.addSeparator ();
		gpsMenu.add (gpsInfo);

		JMenu toolsMenu = new JMenu (Messages.getString("Console.MENU_TOOL")); //$NON-NLS-1$
		JMenuItem options = new JMenuItem (Messages.getString("Console.MENU_OPTIONS")); //$NON-NLS-1$
		options.addActionListener (this);
		JMenuItem reset = new JMenuItem (Messages.getString("Console.MENU_RESET_VIEW")); //$NON-NLS-1$
		reset.addActionListener (this);
		JMenuItem update = new JMenuItem (Messages.getString("Console.MENU_UPDATE_VIEW")); //$NON-NLS-1$
		update.addActionListener (this);
		toolsMenu.add (update);
		toolsMenu.add (reset);
		toolsMenu.addSeparator ();
		toolsMenu.add (options);

		JMenu helpMenu = new JMenu (Messages.getString("Console.MENU_HELP")); //$NON-NLS-1$
		JMenuItem about = new JMenuItem (Messages.getString("Console.MENU_ABOUT")); //$NON-NLS-1$
		about.addActionListener (this);
		helpMenu.add (about);

		menu.add (fileMenu);
		menu.add (gpsMenu);
		menu.add (toolsMenu);
		menu.add (helpMenu);
	}
       public static void resetAll(){
         noInitialize = true;
       }
        private boolean initialize(){
          if(this.noInitialize){
            System.out.println("noInitialize:"+noInitialize);
            System.out.println("initlize..");
              GarminConfiguration.initReceiver();

            dlTracks.setEnabled(true);
            dlTracksToExcel.setEnabled(true);
            dlWaypointToTracks.setEnabled(true);
            dlWaypts.setEnabled(true);
            dlTracksToDatabase.setEnabled(true);
            dlTracksFromDatabase.setEnabled(true);
            dlDrawLine.setEnabled(true);
            dlPrintDoc.setEnabled(true);
            setTitle(GarminConfiguration.getDesc());
          }
          this.noInitialize =false;

          return true;
        }
        public void testComm(){
          this.noInitialize = true;
          GarminConfiguration.initReceiver();
        }

        public void downloadTracks(){

          if(this.initialize())
          //this.initialize();
            TrackLogCommand.getTrackLogGML();
          //fp.hide();
        }
        public void downloadWaypoint(){
          //this.initialize();
          if(this.initialize())
            WaypointCommand.getWaypoints();
            ItemValue.setOldWaypointNum();
            ItemValue.setOldTracksNum();
        }
	public void actionPerformed (ActionEvent evt)
	{
		String arg = evt.getActionCommand ();

		if (arg.equals (Messages.getString("Console.MENU_EXIT"))) //$NON-NLS-1$
		{
			try {
				File f = new File (GarminConfiguration.getTmpFile ());

				if (f.exists () && !(svgURI.startsWith (Messages.getString("Console.21")))) //$NON-NLS-1$
						f.delete ();
			} catch (RuntimeException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}

			System.exit (0);
		}
                else if (arg.equals (Messages.getString("Console.MENU_TRACKS_TO_EXCEL"))) //$NON-NLS-1$
                {
                  String filename = "C:\\gis.xls";
                  JFileChooser fileDialog = new JFileChooser();
                  ExcelFilter filter = new ExcelFilter();
                  fileDialog.setFileFilter(filter);

                  fileDialog.setCurrentDirectory(new File(Messages.getString("Console.25"))); //$NON-NLS-1$

                  int result = fileDialog.showSaveDialog(this);

                  if (result == JFileChooser.APPROVE_OPTION) {

                    File f = fileDialog.getSelectedFile();
                    filename = f.getAbsolutePath();
                    if (f.exists()){

                    }
                      //JOptionPane.showMessageDialog(this, new String(filename),
                      //                              new String(
                      //                              Messages.getString("Console.INFO_ALREADY_EXISTS")),
                       //                             JOptionPane.INFORMATION_MESSAGE); //$NON-NLS-1$

                    else {
                      String extend =f.getName();
                      if(extend.indexOf(".")==-1){
                        filename =filename+".xls";
                      }
                      ///////////////////////////定义数组//////////////////////////////
                      String[] number = new String[myTest.lat.size()],
                          name = new String[myTest.lat.size()],
                          lat = new String[myTest.lat.size()],
                          lon = new String[myTest.lat.size()];
                      for (int i = 0; i < number.length; i++) {
                        number[i] = "" + (i + 1);
                        name[i] = myTest.name.get(i)+"";
                        lat[i] = myTest.lat.get(i) + "";
                        lon[i] = myTest.lon.get(i) + "";
                      }
                      //////////////////////////////////////////////////////////////////
                      try{
                        CopyEditExcel t = new CopyEditExcel(filename);
                        t.fileCreate("", number, name, lat, lon, "", "", "", "", "", "", "",
                                     "", "", "", "");
                      }catch(Exception e){

                      }
                      /////////////////////////////////////////////////////////////////

                      //JOptionPane.showMessageDialog(this,
                      //                              new String(Messages.getString("Console.INFO_SAVED_SUCCESSFUL")),
                      ////                              new
                       //                             String(Messages.getString("Console.INFO_SAVED_TO") +
                       //                                    filename +
                        //                                   Messages.getString("Console.31")),
                        //                            JOptionPane.INFORMATION_MESSAGE); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
                    }
                  }
                }
                else if (arg.equals (Messages.getString("Console.MENU_WAYPOINT_INTO_TRACKS"))) //$NON-NLS-1$
                {
                  new WaypointIntoTracks();
                }
                else if (arg.equals (Messages.getString("Console.MENU_TRACKS_TO_DATABASE"))) //$NON-NLS-1$
                {
                  Connect c = new Connect();
                  c.insertToTable(myTest.name,myTest.lat,myTest.lon);
                  c.setClose();
                }
                else if (arg.equals (Messages.getString("Console.MENU_TRACKS_FROM_DATABASE"))) //$NON-NLS-1$
                {
                  Connect c = new Connect();
                  ResultSet rs =c.queryTable();
                  try{
                    while (rs.next()) {
                      myTest.name.addElement(rs.getString("name"));
                      myTest.lat.addElement(rs.getString("lat"));
                      myTest.lon.addElement(rs.getString("lon"));
                    }
                  }catch(Exception e){
                    e.printStackTrace();
                  }
                  c.setClose();
                }
                else if (arg.equals (Messages.getString("Console.MENU_DRAWLINE"))) //$NON-NLS-1$
                {
                  Frame1 f = new Frame1();
                  f.setSize(800, 600);
                  f.setTitle("Draw Tracks Curve");
                  f.show();
                }
                else if (arg.equals (Messages.getString("Console.MENU_PRINTDOC"))) //$NON-NLS-1$
                {
                  String str =GarminGMLDoc.printDoc();
                  System.out.println(str);
                }

		else if (arg.equals (Messages.getString("Console.MENU_OPEN"))) //$NON-NLS-1$
		{
			JFileChooser fileDialog = new JFileChooser ();
			fileDialog.setCurrentDirectory (new File (Messages.getString("Console.23"))); //$NON-NLS-1$

			int result = fileDialog.showOpenDialog  (this);

			if (result == JFileChooser.APPROVE_OPTION)
			{
				String filename = fileDialog.getSelectedFile ().getName ();

				//JOptionPane.showMessageDialog (this, new String (filename), new String (filename), JOptionPane.INFORMATION_MESSAGE);
			}
		}
		else if (arg.equals (Messages.getString("Console.MENU_SAVE_AS"))) //$NON-NLS-1$
		{
			JFileChooser fileDialog = new JFileChooser ();
			fileDialog.setCurrentDirectory (new File (Messages.getString("Console.25"))); //$NON-NLS-1$

			int result = fileDialog.showSaveDialog  (this);

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -