您的位置:首页 > 编程语言 > Java开发

【JAVA语言程序设计基础篇】--图形--使用FontMetrics类居中显示字符串

2016-08-11 11:04 411 查看
package chapter15;
import java.awt.Graphics;

import javax.swing.JFrame;
import javax.swing.JPanel;
import java.awt.*;
@SuppressWarnings("serial")
public class TestCenterMessage extends JFrame{
public TestCenterMessage(){
setTitle("aaa");
CenterMessage messagePanel = new CenterMessage();

add(messagePanel);
messagePanel.setBackground(Color.white);
messagePanel.setFont(new Font("Californian FB",Font.BOLD,30));

}
public static void main(String[] args) {
TestCenterMessage frame = new TestCenterMessage();

frame.setLocationRelativeTo(null);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(300, 300);
frame.setVisible(true);

}
}
@SuppressWarnings("serial")
class CenterMessage extends JPanel{
protected void paintComponent(Graphics g) {
super.paintComponent(g);

FontMetrics fm = g.getFontMetrics();//
int stringWidth = fm.stringWidth("welcome to java");
int stringAscent = fm.getAscent();
//定义首字母左下标位置(x,y)
int xCoordinate = getWidth()/2-stringWidth/2;
int yCoordinate = getHeight()/2-stringAscent/2;
g.drawString("welcome to java", xCoordinate, yCoordinate);
}
}


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: