帝国软件
  设为首页 加入收藏 关于我们
 
解密帝国网站管理系统
栏 目:
 
您的位置:首页 > 技术文档 > JAVA编程 >
Java的秘密:使用全屏幕模式
作者:未知 发布时间:2005-03-12 来源:JSP天空网
什么时候会用到全屏幕模式?
也许用到的机会很少,但JDK还是为我们提供了这个的功能。像许多软件中的打印预览功能,还有某些文本编辑器中为了获得更大的编辑画面,也用到了全屏幕模式,如果你有兴趣写一个像ACDSee这样的软件,使用全屏幕模式可以让用户看到更大的图片画面。

如何使用全屏幕模式?
关键是java.awt.*里面的两个与显示设备有关的类:GraphicsEnvironment和GraphicsDevice。

GraphicsEnvironment为Java应用程序提供了特定平台的 GraphicsDevice
对象和 Font 对象集合。这些GraphicsDevice可以是各种本机和远端机器的资源,如屏幕、打印机或者是Image Buffer,甚至是Graphics2D绘图方法的目标对象。

而GraphicsDevice就是指特定的图形环境了,如屏幕和打印设备等。这样,我们就可以用GraphicsDevice来操纵屏幕了。GraphicsDevice提供的setFullScreenWindow()方法就是设置全屏幕用的。

由于GraphicsEnvironment的构造器是受保护的(protected),我们不能直接构造一个
GraphicsEnvironment对象来获得GraphicsDevice对象。幸好它提供了getLocalGraphicsEnvironment()方法,用来获得一个GraphicsEnvironment实例:
GraphicsEnvironment ge = GraphicsEnvironment.getLocalGraphicsEnvironment();
有了GraphicsEnvironment可以调用getDefaultScreenDevice方法获得当前的屏幕设备了:
GraphicsDevice gd = ge.getDefaultScreenDevice();

自己动手体验一下
有了上面的简介,写一个实例来体验一下吧:

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

public class FullScreenTest
{
public static void main(String[] args)
{

GraphicsEnvironment ge =
GraphicsEnvironment.getLocalGraphicsEnvironment();
GraphicsDevice gd = ge.getDefaultScreenDevice();
FullScreenWindow myWindow = new FullScreenWindow();
if ( gd.isFullScreenSupported() )
gd.setFullScreenWindow(myWindow);
else
System.out.println("Unsupported full screen.");

}
}

class FullScreenWindow extends JWindow
{
public FullScreenWindow()
{
this.addMouseListener(new MouseAdapter()
{
public void mousePressed(MouseEvent evt)
{
quit();
}
});
}

public void quit()
{
this.dispose();
}

public void paint(Graphics g)
{
g.setFont(new Font("Arial",Font.BOLD,30));
g.setColor(Color.RED);
g.drawString("这是全屏幕模式",100,100);

}

  
评论】【加入收藏夹】【 】【打印】【关闭
※ 相关链接
 ·在Java中应用State设计模式  (2005-03-12)
 ·Java设计模式之修饰模式篇  (2005-03-12)
 ·Java事件处理模式  (2005-03-12)
 ·JavaBean使用技巧  (2005-03-12)
 ·MD5的Java Bean实现(转载)  (2005-03-12)
 ·Enterprise JavaBeans 入门  (2005-03-12)
 ·Java中的模式  (2005-03-12)
 ·Java Tip: 实现Command模式  (2005-03-12)
 ·最佳实践:用 Enterprise JavaBe  (2005-03-12)
 ·什么是 Enterprise JavaBeans 组  (2005-03-12)

   栏目导行
  PHP编程
  ASP编程
  ASP.NET编程
  JAVA编程
   站点最新
·致合作伙伴的欢迎信
·媒体报道
·帝国软件合作伙伴计划协议
·放眼未来 帝国近期将有重大举措!
·PHPWind6.3.2版通行证发布
·帝国备份王2008版正式发布
·帝国备份王2008版发布
·phpcms2007转帝国CMS5.0程序发布
·dedecms5.1转帝国CMS5.0程序发布
·帝国网站管理系统V5.0商业购买说明
   类别最新
·谈谈JDBC
·JDBC专题介绍
·JDBC接口技术
·利用weblogic的POOL(连接池)连接
·Jsp中调用Oracle存储过程的小例子
·JSP数据库操作例程
·JSP数据库连接大全
·用连接池提高Servlet访问数据库的效
·一种简单JDBC连接池的实现
·数据库连接池Java实现小结
 
关于帝国 | 广告服务 | 联系我们 | 程序开发 | 网站地图 | 留言板 帝国网站管理系统