Hi!
Gibt es eine Möglichkeit getFontMetrics außerhalb von paint(Graphics g) aufzurufen?
So funktioniert es:
[HIGHLIGHT="Java"]import java.awt.*;
public class Test
extends Frame
{
public static void main(String[] args)
{
Test wnd = new Test();
}
public Test()
{
super("Test");
setSize(300,200);
setVisible(true);
}
public void paint(Graphics g)
{
Font font;
FontMetrics fm = getFontMetrics(new Font("Serif",Font.PLAIN,36));
System.out.println(fm.getAscent());
}
}[/HIGHLIGHT]
Aber so funktioniert es eben nicht:
[HIGHLIGHT="Java"]import java.awt.*;
public class Test
{
public static void main(String[] args)
{
Font font = new Font("Serif",Font.PLAIN,36);
FontMetrics fm = getFontMetrics(font);
System.out.println(fm.getAscent());
}
}[/HIGHLIGHT]
Im 2. Beispiel heißt es, dass die Methode undefiniert ist.
Aber wie komme ich ohne die paint-Methode aufrufen zu müssen an die Daten heran und vor allem weshalb ist die Methode undefiniert?
mfg
javanewcomer
Gibt es eine Möglichkeit getFontMetrics außerhalb von paint(Graphics g) aufzurufen?
So funktioniert es:
[HIGHLIGHT="Java"]import java.awt.*;
public class Test
extends Frame
{
public static void main(String[] args)
{
Test wnd = new Test();
}
public Test()
{
super("Test");
setSize(300,200);
setVisible(true);
}
public void paint(Graphics g)
{
Font font;
FontMetrics fm = getFontMetrics(new Font("Serif",Font.PLAIN,36));
System.out.println(fm.getAscent());
}
}[/HIGHLIGHT]
Aber so funktioniert es eben nicht:
[HIGHLIGHT="Java"]import java.awt.*;
public class Test
{
public static void main(String[] args)
{
Font font = new Font("Serif",Font.PLAIN,36);
FontMetrics fm = getFontMetrics(font);
System.out.println(fm.getAscent());
}
}[/HIGHLIGHT]
Im 2. Beispiel heißt es, dass die Methode undefiniert ist.
Aber wie komme ich ohne die paint-Methode aufrufen zu müssen an die Daten heran und vor allem weshalb ist die Methode undefiniert?
mfg
javanewcomer