使用Java中的Graphics类和FontMetrics类可以实现输入文本在屏幕上的显示。代码示例如下:
import java.awt.Graphics;
import java.awt.FontMetrics;
import java.awt.Dimension;
import javax.swing.JPanel;
public class TextDisplayPanel extends JPanel {
private String text; // 需要显示的文本
public TextDisplayPanel(String text) {
this.text = text;
}
public void paintComponent(Graphics g) {
super.paintComponent(g);
FontMetrics fm = g.getFontMetrics();
// 获得面板的大小
Dimension d = getSize();
// 计算文本的宽度和高度
int textWidth = fm.stringWidth(text);
int textHeight = fm.getHeight();
// 计算文本在屏幕上的位置
int x = (d.width - textWidth) / 2;
int y = (d.height - textHeight) / 2 + fm.getAscent();
// 在屏幕上绘制文本
g.drawString(text, x, y);
}
}
在上面的示例中,TextDisplayPanel是一个JPanel对象,它可以显示一个字符串。在paintComponent方法中,首先调用父类的paintComponent方法来清除旧的显示内容。接下来,使用Graphics对象的getFontMetrics方法获得当前字体的FontMetrics对象。FontMetrics对象包含关于文本大小和间距的信息,可以用于计算文本的宽度和高度。然后,使用面板的大小和文本的大小计算文本在屏幕上的位置。最后,使用drawString方法在屏幕上绘制文本。