Slettet bruger
08. oktober 2002 - 13:54
Der er
2 kommentarer
Applet fill color
Det duer ikke det her.
g2.drawString(message1, (float)xLeft, (float)yBase);
g2.fill(new Rectangle2D.Double(xLeft, yTop,
xMessageWidth, yMessageHeight));
Teksten forsvinder "under" udfyldningen.
Hvad er problemet?
Slettet bruger
08. oktober 2002 - 14:20
#2
Nop...
Men her er så hele koden
import java.applet.Applet;
import java.awt.Font;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.font.FontRenderContext;
import java.awt.geom.Line2D;
import java.awt.geom.Rectangle2D;
import java.awt.Color;
public class P410 extends Applet
{
public void paint(Graphics g)
{
Graphics2D g2 = (Graphics2D)g;
Graphics2D g5 = (Graphics2D)g;
final int FONT_SIZE = 36;
Font fontSize = new Font("Serif", Font.BOLD, FONT_SIZE);
g2.setFont(fontSize);
g2.setColor(Color.black);
String message = "Password";
FontRenderContext context = g2.getFontRenderContext();
Rectangle2D bounds = fontSize.getStringBounds(message, context);
double yMessageAscent = -bounds.getY();
double yMessageDescent = bounds.getHeight() + bounds.getY();
double yMessageHeight = bounds.getHeight();
double xMessageWidth = bounds.getWidth();
double xLeft = (getWidth() - xMessageWidth) / 2;
double yTop = (getHeight() - yMessageHeight) / 2;
double yBase = yTop + yMessageAscent;
g2.drawString(message, (float)xLeft, (float)yBase);
g5.setColor(Color.blue);
g5.fill(new Rectangle2D.Double(xLeft, yTop,
xMessageWidth, yMessageHeight));
}
}