资源简介

Floyd算法基于JAVA实现上海地铁最短路线搜索系统,图形界面,支持新建删除站点以及新建线路。

资源截图

代码片段和文件信息

import java.awt.Color;
import java.awt.Dimension;
import java.awt.Graphics;
import java.awt.Shape;
import java.awt.SystemColor;
import java.awt.geom.Ellipse2D;

import javax.swing.JButton;
import javax.swing.plaf.basic.BasicButtonUI;

public class Station extends JButton{
private String name;//站点名称
private int xy;//站点坐标
private int [] line;//可换乘线路
private int linenum;//可换乘线路数
private Color [] color;//可换乘线路颜色
final private int width =10;
final private int height =10;
public boolean pointing=false;
Shape shape;
Color bgColor = SystemColor.control;

//String  first_run;//首班车
//String  last_run;//末班车

boolean draggable = false;//可拖动标志
Station(){
super();
}
Station(String nameint xint yint linenumint[] line) {
super();
super.setUI(new BasicButtonUI());// 恢复基本视觉效果
super.setContentAreaFilled(false);
Dimension size = this.getPreferredSize();
    size.width = size.height = Math.max(size.width size.height);
    this.setPreferredSize(size); // 设置宽高等距
    this.setContentAreaFilled(false); // 不绘制内容区域
    this.setBorderPainted(false); // 不绘制边框
    this.setFocusPainted(false); // 不绘制焦点状态
    this.setBackground(bgColor);
    this.setOpaque(false);
    this.setVisible(false);
    setStation(namexylinenumline);
}
protected void paintComponent(Graphics g) {
    // 如果鼠标按下,isArmed()方法返回true
    if (this.getModel().isArmed()) {
      g.setColor(java.awt.SystemColor.controlHighlight);
    } else {
      //g.setColor(java.awt.SystemColor.controlShadow);
      g.setColor(this.bgColor); // 设置背景颜色
    }
    g.fillOval(0 0 this.getSize().width - 1 this.getSize().height - 1); // 绘制圆形背景区域
    g.setColor(java.awt.SystemColor.controlShadow); // 设置边框颜色
    g.drawOval(0 0 this.getSize().width - 1 this.getSize().height - 1); // 绘制边框线
    super.paintComponent(g);
}
public boolean contains(int x int y) {
if ((shape == null) || (!shape.getBounds().equals(this.getBounds()))) {
this.shape = new Ellipse2D.Float(0 0 this.getWidth() this.getHeight());
     }
    return shape.contains(x y);
}
public String getstname(){
return name; 
}
public int getstx(){
//System.out.print(“ this.x = “+x);
return x+8;
}
public int getsty(){
//System.out.print(“ this.y = “+y);
return y+31;
}
public int getstlinenum(){
return linenum;
}
public int[] getstline(){
return line;
}
public void setStation(String nameint xint yint linenumint []line){
this.name=name;
this.line=line;
this.x=x;///3-50;
this.y=y;///3-30;
super.setLocation(this.x this.y-25);
this.linenum=linenum;
this.line=new int[linenum];
this.line=line.clone();
setColor();
this.setBounds(this.x this.y-25 width height);
//System.out.print(“x = “+this.x+“  y = “+this.y);
}
public void setPosition(int xint y){
this.x=x;///3-50;
this.y=y;///3-30;
super.setLocation(this.x this.y-25);
}
public void setLine

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2016-09-12 10:01  SUBWAY\
     文件         301  2016-07-18 19:07  SUBWAY\.classpath
     文件         382  2016-07-18 19:07  SUBWAY\.project
     目录           0  2016-07-18 19:07  SUBWAY\.settings\
     文件         598  2016-07-18 19:07  SUBWAY\.settings\org.eclipse.jdt.core.prefs
     目录           0  2016-08-31 14:48  SUBWAY\bin\
     文件        3872  2016-08-29 10:54  SUBWAY\bin\Station.class
     文件         741  2016-09-12 10:08  SUBWAY\bin\SubwayMap$1.class
     文件        1025  2016-09-12 10:08  SUBWAY\bin\SubwayMap$10.class
     文件        1025  2016-09-12 10:08  SUBWAY\bin\SubwayMap$11.class
     文件        1025  2016-09-12 10:08  SUBWAY\bin\SubwayMap$12.class
     文件        1025  2016-09-12 10:08  SUBWAY\bin\SubwayMap$13.class
     文件        1025  2016-09-12 10:08  SUBWAY\bin\SubwayMap$14.class
     文件        1025  2016-09-12 10:08  SUBWAY\bin\SubwayMap$15.class
     文件        1023  2016-09-12 10:08  SUBWAY\bin\SubwayMap$16.class
     文件        2384  2016-09-12 10:08  SUBWAY\bin\SubwayMap$17.class
     文件        2965  2016-09-12 10:08  SUBWAY\bin\SubwayMap$18.class
     文件        1381  2016-09-12 10:08  SUBWAY\bin\SubwayMap$2.class
     文件         673  2016-09-12 10:08  SUBWAY\bin\SubwayMap$3.class
     文件         851  2016-09-12 10:08  SUBWAY\bin\SubwayMap$4.class
     文件         721  2016-09-12 10:08  SUBWAY\bin\SubwayMap$5.class
     文件        2215  2016-09-12 10:08  SUBWAY\bin\SubwayMap$6.class
     文件        2769  2016-09-12 10:08  SUBWAY\bin\SubwayMap$7.class
     文件        1023  2016-09-12 10:08  SUBWAY\bin\SubwayMap$8.class
     文件        1023  2016-09-12 10:08  SUBWAY\bin\SubwayMap$9.class
     文件       30343  2016-09-12 10:08  SUBWAY\bin\SubwayMap.class
     文件        3306  2016-09-12 09:57  SUBWAY\bin\Way.class
     目录           0  2016-07-21 19:59  SUBWAY\src\
     文件        3302  2016-08-29 10:54  SUBWAY\src\Station.java
     文件       45747  2016-09-12 10:08  SUBWAY\src\SubwayMap.java
     文件        2747  2016-09-12 09:57  SUBWAY\src\Way.java
............此处省略2个文件信息

评论

共有 条评论