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

来源:互联网 发布:关系数据库设计范式 编辑:程序博客网 时间:2024/06/04 01:16



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);}}


0 0