|
|
Java游戏起步:(二)图形基础和显示文字 |
|
|
作者:未知 来源:月光软件站 加入时间:2005-2-28 月光软件站 |
基本概念! 屏幕分辨率:以pixel为单位的屏幕面积,如800*600 位深:显示颜色数量。如8位有256色,16位有65536色 刷新率:单位HZ
有用的对象! Window对象:代表屏幕内容,可看作绘图的画布,如JFrame就是Window的子类 DisplayMode对象:用来指定屏幕分辨率,位深和刷新率 GraphicsDevice对象:用来改变显示属性,可看作操纵显卡的界面,由GraphicsEnvironment对象取得
一个将JFrame放至全屏的例子! import java.awt.*; import javax.swing.JFrame; //先把三个对象准备好 JFrame jf=new JFrame(); DisplayMode displaymode=new DisplayMode(800,600,16,75); GraphicsDevice device=GraphicsEnvironment.getLocalGraphicsEnvironment().getDefaultScreenDevice(); //JFrame至全屏 device.setFullscreenWindow(jf); //改变显示方式 device.setDisplayMode(displaymode); //退出全屏 device.setFullscreenWindow(null); //想让效果更好一点,可以改变JFrame的显示方式。如: jf.setUndecorated(true); jf.setResizable(false); //另外,一般在改变显示方式时需要加上必要的判断和捕获异常,像这样: if (device.isDisplayChangeSupported()){ try { device.setDisplayMode(displayMode); }catch (IllegalArgumentException ex) {} } //显示个HelloWorld试试?在一个JFrame里加上: public void paint(Graphics g) { g.drawString("Hello World!", 20, 50); } //文字可以用java.awt.Graphics2D类抗锯齿! public void paint(Graphics g) { if(g instanceof Graphics2D){ Graphics2D g2d=(Graphics2D)g;//Graphics2D是Graphics的子类 //抗锯齿,绘制质量等可参考RenderingHints类的文档! g2d.setRenderingHint(RenderingHints.KEY_TEXT_ANTIALIASING,RenderingHints.VALUE_TEXT_ANTIALIAS_ON); } g.drawString("Hello World!", 20, 50); } 差不多了,下篇写绘制图形!
|
|
相关文章:相关软件: |
|