Java游戏起步:(二)图形基础和显示文字

王朝java/jsp·作者佚名  2006-01-09
宽屏版  字体: |||超大  

基本概念!

屏幕分辨率:以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);

}

差不多了,下篇写绘制图形!

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
© 2005- 王朝网络 版权所有