showpanel.java

来自「Java实现的常用数据结构算法」· Java 代码 · 共 48 行

JAVA
48
字号
package graph;
import java.awt.*;
public class ShowPanel extends Panel {
	Graph graph;
	Point[] points;
	boolean[][] links;
	public ShowPanel(Graph g){
		graph=g;
		int len=g.labels.length;
		points=new Point[len];	  
		for(int i=0;i<len;i++){
		   points[i]=(Point)g.labels[i];
		}
		links=g.edges;	
	}
	public void paint(Graphics g){
		int len=points.length;
		g.setColor(Color.LIGHT_GRAY);
		for(int i=0;i<len;i++){
			g.drawOval(points[i].x-6,points[i].y-6,12,12);
			g.drawString(""+i,points[i].x+6,points[i].y+6);
		for(int j=0;j<len;j++){
			if(links[i][j]){
			g.drawLine(points[i].x,points[i].y,points[j].x,points[j].y);
			}
		}				
		}
		
	}
	public void fillPoint(Point p){
		Graphics g=this.getGraphics();
		g.setColor(Color.red);
		g.fillOval(p.x-6,p.y-6,12,12);
	}
	public void SelectPoint(Point p){
		Graphics g=this.getGraphics();
		g.setColor(Color.BLUE);
		g.fillOval(p.x-6,p.y-6,12,12);
	}
	public void draw(int i,int j){
		Graphics g=this.getGraphics();
		g.setColor(Color.red);
		g.drawLine(points[i].x-6,points[i].y-6,points[j].x,points[j].y);
	}

}

⌨️ 快捷键说明

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