www.pudn.com > 算法源码集合.rar > SubscriptedLabel.java
// SubscriptedLabel.java
// SubscriptedLabel for block diagram animation
//
import java.awt.*;
import java.util.*;
public class SubscriptedLabel {
//
int x, y; // Position
static int h = 30; // Fixing the height
static int w = 30; // Fixing the width
String label, subscript;
Color c;
Font font;
Node input;
Vector output;
public SubscriptedLabel( String label, String subscript, int x, int y) {
this.x = x ;
this.y = y;
this.label = label ;
this.subscript = subscript ;
c = Color.black;
}
private Point labelLocation (Graphics g) {
FontMetrics fm = g.getFontMetrics();
int x = (w/2) - (fm.stringWidth(label)/2);
int y = (h/2) + (fm.getAscent()/2);
return new Point(x,y);
}
// public void setColour( awt.Color new ) {
// c = new;
// }
public void draw( Graphics g ) {
//int lx, ly; // Centre of label
//lx = x + w/2;
//ly = y + h/2;
Point labelLoc = labelLocation(g);
g.setColor( c );
// g.setFont( font );
g.drawString( label,x + labelLoc.x , y + labelLoc.y );
g.drawString( subscript, x + 5 ,y +2);
}
}