Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openanolis
dragonwell8_jdk
提交
6123d99f
D
dragonwell8_jdk
项目概览
openanolis
/
dragonwell8_jdk
通知
4
Star
2
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
D
dragonwell8_jdk
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
6123d99f
编写于
3月 25, 2011
作者:
M
mrkam
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
7027675: /applets/Blink demo needs to be improved
Reviewed-by: alexp
上级
8a08d694
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
41 addition
and
27 deletion
+41
-27
src/share/demo/applets/Blink/Blink.java
src/share/demo/applets/Blink/Blink.java
+41
-27
未找到文件。
src/share/demo/applets/Blink/Blink.java
浏览文件 @
6123d99f
/*
* Copyright (c) 1997, 20
06
, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1997, 20
11
, Oracle and/or its affiliates. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
...
...
@@ -29,92 +29,106 @@
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
/*
*/
/**
* I love blinking things.
*
* @author Arthur van Hoff
* @
modified
04/24/96 Jim Hagen use getBackground
* @
modified
02/05/98 Mike McCloskey removed use of deprecated methods
* @
modified
04/23/99 Josh Bloch, use timer instead of explicit multithreading.
* @
modified
07/10/00 Daniel Peek brought to code conventions, minor changes
* @
author
04/24/96 Jim Hagen use getBackground
* @
author
02/05/98 Mike McCloskey removed use of deprecated methods
* @
author
04/23/99 Josh Bloch, use timer instead of explicit multithreading.
* @
author
07/10/00 Daniel Peek brought to code conventions, minor changes
*/
import
java.awt.Color
;
import
java.awt.Dimension
;
import
java.awt.Font
;
import
java.awt.FontMetrics
;
import
java.awt.Graphics
;
import
java.util.StringTokenizer
;
import
java.util.Timer
;
import
java.util.TimerTask
;
import
java.awt.*
;
import
java.util.*
;
public
class
Blink
extends
java
.
applet
.
Applet
{
private
static
final
long
serialVersionUID
=
-
775844794477507646L
;
private
Timer
timer
;
// Schedules the blinking
private
String
labelString
;
// The label for the window
private
int
delay
;
// the delay time between blinks
@Override
public
void
init
()
{
String
blinkFrequency
=
getParameter
(
"speed"
);
delay
=
(
blinkFrequency
==
null
)
?
400
:
(
1000
/
Integer
.
parseInt
(
blinkFrequency
));
delay
=
(
blinkFrequency
==
null
)
?
400
:
(
1000
/
Integer
.
parseInt
(
blinkFrequency
));
labelString
=
getParameter
(
"lbl"
);
if
(
labelString
==
null
)
if
(
labelString
==
null
)
{
labelString
=
"Blink"
;
}
Font
font
=
new
java
.
awt
.
Font
(
"Serif"
,
Font
.
PLAIN
,
24
);
setFont
(
font
);
}
@Override
public
void
start
()
{
timer
=
new
Timer
();
//creates a new timer to schedule the blinking
timer
.
schedule
(
new
TimerTask
()
{
//creates a timertask to schedule
// overrides the run method to provide functionality
@Override
public
void
run
()
{
repaint
();
}
}
,
delay
,
delay
);
},
delay
,
delay
);
}
@Override
public
void
paint
(
Graphics
g
)
{
int
fontSize
=
g
.
getFont
().
getSize
();
int
x
=
0
,
y
=
fontSize
,
space
;
int
red
=
(
int
)
(
50
*
Math
.
random
());
int
green
=
(
int
)
(
50
*
Math
.
random
());
int
blue
=
(
int
)
(
256
*
Math
.
random
());
int
red
=
(
int
)
(
50
*
Math
.
random
());
int
green
=
(
int
)
(
50
*
Math
.
random
());
int
blue
=
(
int
)
(
256
*
Math
.
random
());
Dimension
d
=
getSize
();
g
.
setColor
(
Color
.
black
);
FontMetrics
fm
=
g
.
getFontMetrics
();
space
=
fm
.
stringWidth
(
" "
);
for
(
StringTokenizer
t
=
new
StringTokenizer
(
labelString
);
t
.
hasMoreTokens
();)
{
t
.
hasMoreTokens
();)
{
String
word
=
t
.
nextToken
();
int
w
=
fm
.
stringWidth
(
word
)
+
space
;
if
(
x
+
w
>
d
.
width
)
{
x
=
0
;
y
+=
fontSize
;
//move word to next line if it doesn't fit
}
if
(
Math
.
random
()
<
0.5
)
g
.
setColor
(
new
java
.
awt
.
Color
((
red
+
y
*
30
)
%
256
,
(
green
+
x
/
3
)
%
256
,
blue
));
else
if
(
Math
.
random
()
<
0.5
)
{
g
.
setColor
(
new
java
.
awt
.
Color
((
red
+
y
*
30
)
%
256
,
(
green
+
x
/
3
)
%
256
,
blue
));
}
else
{
g
.
setColor
(
getBackground
());
}
g
.
drawString
(
word
,
x
,
y
);
x
+=
w
;
//shift to the right to draw the next word
}
}
@Override
public
void
stop
()
{
timer
.
cancel
();
//stops the timer
}
@Override
public
String
getAppletInfo
()
{
return
"Title: Blinker\n"
+
"Author: Arthur van Hoff\n"
+
"Displays multicolored blinking text."
;
+
"Author: Arthur van Hoff\n"
+
"Displays multicolored blinking text."
;
}
@Override
public
String
[][]
getParameterInfo
()
{
String
pinfo
[][]
=
{
{
"speed"
,
"string"
,
"The blink frequency"
},
{
"lbl"
,
"string"
,
"The text to blink."
},
};
{
"speed"
,
"string"
,
"The blink frequency"
},
{
"lbl"
,
"string"
,
"The text to blink."
},
};
return
pinfo
;
}
}
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录