【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); } }
相关文章推荐
- 【JAVA语言程序设计基础篇】--图形-- 使用抽象方法绘制函数图形
- 【JAVA语言程序设计基础篇】--图形-- 绘制封装表格类的思考
- 【JAVA语言程序设计基础篇】--图形--练习绘制弧形
- 【JAVA语言程序设计基础篇】--图形-- 三种时钟--增强对类的理解和应用
- 【JAVA语言程序设计基础篇】--图形--练习绘制多边形
- 【JAVA语言程序设计基础篇】--图形用户界面基础--使用面板作为子容器
- 【JAVA语言程序设计基础篇】--图形-- 一些总结
- 【JAVA语言程序设计基础篇】--图形--一些练习
- Java语言程序设计-基础篇-5.6习题-显示模式
- Java语言程序设计-基础篇(五)字符串
- 【JAVA语言程序设计基础篇】--图形--练习绘制时钟
- java语言程序设计-基础篇
- Java语言程序设计-基础篇-第八版-复习题-第六章
- Java语言程序设计-基础篇-第八版-第四章
- Java语言程序设计-基础篇-第八版-编程练习题-第六章
- Java语言程序设计-基础篇-第八版-第七章
- Java语言程序设计-基础篇-第八版-复习题-第三章
- Java语言程序设计-基础篇-第八版-复习题-第二章
- Java语言程序设计-基础篇-第八版-复习题-第四章
- Java语言程序设计-基础篇-第八版-第三章