import java.awt.*; public class HeaderPanel extends Panel { private String header; private Font font = new Font("Helvetica",Font.BOLD,20); private Rectangle rheader; private FontMetrics fm; private Color blue_color = new Color(0,0,130); public HeaderPanel(String txt) { header = txt; } public void paint(Graphics g) { if(rheader == null) { rheader = new Rectangle(0,0,size().width,size().height); } update(g); } public void update(Graphics g) { g.setColor(Color.lightGray); g.fill3DRect(rheader.x, rheader.y, rheader.width, rheader.height, true); int off = 3; g.setColor(blue_color); g.fillRect(rheader.x+off, rheader.y+off, rheader.width-2*off-1, rheader.height-2*off-1); fm = g.getFontMetrics(font); int x = rheader.x + (rheader.width-fm.stringWidth(header))/2; int y = rheader.y + (rheader.height+fm.getHeight())/2-6; g.setFont(font); g.setColor(Color.black); g.drawString(header, x-1, y); g.drawString(header, x+1, y); g.setColor(Color.white); g.drawString(header, x, y); } }