随笔:20 文章:1 评论:8 引用:0
╰⊙д⊙╯。oо○
面朝大海·春暖花开
BlogJava
首页
发新随笔
发新文章
联系
聚合
管理
Java全屏幕模式程序
『引自:
http://www.cndw.com/tech/program/2006042760477.asp
』
像许多软件中的打印预览功能,还有某些文本编辑器中为了获得更大的编辑画面,会用到全屏幕模式。如何使用全屏幕模式? 关键是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();
}
}
);
}
//
释放由此 Window、其子组件及其拥有的所有子组件所使用的所有本机屏幕资源
public
void
quit()
{
this
.dispose();
}
//
FullScreenWindow 继承 JWindow 继承 Window 继承 Container
public
void
paint(Graphics g)
{
g.setFont(
new
Font(
"
Arial
"
, Font.BOLD,
30
));
g.setColor(Color.RED);
g.drawString(
"
***************
"
,
300
,
300
);
}
}
发表于 2008-04-27 20:17
dreamingnest
阅读(207)
评论(0)
编辑
收藏
新用户注册
刷新评论列表
只有注册用户
登录
后才能发表评论。
网站导航:
博客园
IT新闻
知识库
C++博客
博问
管理
CALENDER
<
2008年4月
>
日
一
二
三
四
五
六
30
31
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
1
2
3
4
5
6
7
8
9
10
常用链接
我的随笔
我的文章
我的评论
我的参与
最新评论
留言簿
(1)
给我留言
查看公开留言
查看私人留言
随笔分类
(13)
应用程序(4)
(rss)
数据结构(java)
(rss)
算法程序总结(2)
(rss)
链表和栈(结)(7)
(rss)
随笔档案
(21)
2008年10月 (1)
2008年5月 (7)
2008年4月 (13)
外面的世界
懒散狂徒的专栏(天行健,君子以自强不息 地势坤,君子以厚德载物)
(rss)
这里的朋友
保尔任(思想比知识更重要 成长比成功更重要)
搜索
最新评论
1. re: BFS和DFS两种方法获取指定目录下的所有目录和文件
学习了
--fejay
2. re: 关于蚂蚁问题(Ants)
实际过程可以这么进行抽象模拟:
序列中的元素带有方向,进行负值部分移动到负值区域,正值部分移动到正值区域时就不再发生碰撞,此时绝对值最小的值决定剩余爬行时间
--zdh
3. re: 关于蚂蚁问题(Ants)
这个问题看到实质就很简单,所有的蚂蚁都是相同的蚂蚁,因此可以看成所有的蚂蚁都可以穿过对面爬过来的蚂蚁就ok啦,最长时间就是两端的蚂蚁向另一端爬出去,最短的就是两端的四个蚂蚁向所在端爬出:)
--zdh
4. re: 关于蚂蚁问题(Ants)
评论内容较长,点击标题查看
--blues
5. re: 关于蚂蚁问题(Ants)
评论内容较长,点击标题查看
--dreamingnest
阅读排行榜
1. 关于蚂蚁问题(Ants)(2215)
2. 通过排序总结java泛型数组列表(1643)
3. 堆栈解(非递归)决迷宫问题(1409)
4. ACM中使用JAVA的介绍(1045)
5. ~·扫雷小游戏·~(1024)
评论排行榜
1. 关于蚂蚁问题(Ants)(7)
2. BFS和DFS两种方法获取指定目录下的所有目录和文件(1)
3. 一著名软件公司的java笔试算法题的答案 (0)
4. 堆栈解(非递归)决迷宫问题(0)
5. 堆排序代码(0)
Powered By:
博客园
模板提供
:
沪江博客