📄 java入门(11) 让程序更动人.htm
字号:
<BR><BR><BR><BR> 正如上面所讲的一样,我们能够很轻松地设置风格与大小,但可以选择哪些字体名呢?我无法回答这个问题,谁也无法回答这个问题!因为这个问题的答案掌握在你的系统中!也就是能够使用哪些字体,完全取决于你的系统中安装了什么字体。
<BR><BR> 实例说明 <BR><BR> 下面我们还做一次修改字体的实验: <BR><BR> 源程序:lianxi11_2.java
<BR><BR><BR>import javax.swing.*; <BR>import java.applet.*; <BR>import
java.awt.*; <BR>public class useFont extends JApplet <BR>{ <BR>public void
init() <BR>JPanel panel1=(JPanel)getContentPane();
<BR>panel1.setLayout(new GridLayout(2,1)); <BR>JLabel fonttest=new
JLabel("This is a Font test"); <BR>Font font=new
Font("Arial",Font.BOLD,30); <BR>fonttest.setFont(font);
<BR>panel1.add(fonttest); <BR>JButton button1=new JButton("Test");
<BR>Font font1=new Font("Courier New",Font.BOLD,20);
<BR>button1.setFont(font1); <BR>panel1.add(button1); <BR>} <BR>}
<BR><BR><BR><BR> 我们编译完后,用appletviewer观察程序的输出,你会发现,字体变了!
<BR><BR><BR> 图11-9 useFont.java的输出 <BR><BR> 自测练习
<BR><BR> 1)“粗体”是字体的_________。 <BR><BR> a.风格 b.字体集 c.大小
<BR><BR> 2)在Java语言中,字体大小使用________单位。 <BR><BR> a.dot b.pixels c.point
<BR><BR> 3)在等宽字体中,字母m与字母l所占的字符宽度________。 <BR><BR> a.相等 b.不相等
<BR><BR> 4) 只要两台机器上安装的操作系统一样,则能够使用的字体集就相同。______ <BR><BR> a.对 b.不对
<BR><BR> 5) 在Java中,不支持____________。 <BR><BR> a.粗体 b.下划线 c.斜体 d.粗斜体
<BR><BR> 6) 编写一个程序,其界面如下所示: <BR><BR><BR> 图11-10 练习题图
<BR><BR> 在这个程序中,我们打印出8个字体逐渐增长的字符串。其字体集为Arial,风格为普通。请编程实现:
<BR><BR> ____________________________________________________________________
<BR><BR> ____________________________________________________________________
<BR><BR> ____________________________________________________________________
<BR><BR> ____________________________________________________________________
<BR><BR> ____________________________________________________________________
<BR><BR> 练习答案 <BR><BR> 1)a 粗体、斜体、粗斜体都是字体的风格。 <BR><BR> 2)c
采用印刷业的术语“磅”,即point。 <BR><BR> 3)a 所谓等宽就是所有字母所占的宽度相等。 <BR><BR> 4)b
不对,安装了什么字体是十分个性化的,除了操作系统,还有应用软件、手动安装使得字体不相同。 <BR><BR> 5)b 在java 中不支持下划线。
<BR><BR> 3)以下是一个程序实例: <BR><BR> 源程序:lianxi11_3.java <BR><BR><BR>import
javax.swing.*; <BR>import java.applet.*; <BR>import java.awt.*; <BR>public
class lianxi11_3 extends JApplet <BR>{ <BR>public void init() <BR>{
<BR>JPanel panel1=(JPanel)getContentPane(); <BR>panel1.setLayout(new
GridLayout(8,1)); <BR>for (int size=10;size<25;size+=2) <BR>{
<BR>JLabel label=new JLabel("Arial,size is "+size); <BR>Font font=new
Font("Arial",Font.PLAIN,size); <BR>label.setFont(font);
<BR>panel1.add(label); <BR>} <BR>} <BR>} <BR><BR><BR><BR> 11.4 使用颜色
<BR><BR> 传授新知
<BR><BR> 在我们前面的程序中,已经对颜色有了一些接触,在这一小节中,我们就系统地来学习一下如何在Java程序中使用颜色。
<BR><BR> 在Java中,就想处理字体一样,将与颜色相关的东西做在一个类中,这个类就是Color类。你可以通过它来定义各种各样的颜色。
<BR><BR> 1. 使用预定义颜色:
<BR><BR> 在Java语言中,为了方便大家在程序中使用常用颜色,就预先定义了13种颜色供大家使用。所有的预定义颜色如下表所示:
<BR><BR> 颜色值 颜色 颜色值 颜色 <BR><BR> Color.black 黑色 Color.darkGray 深灰
<BR><BR> Color.gray 灰色 Color.lightGray 浅灰 <BR><BR> Color.white 白色
Color.red 红色 <BR><BR> Color.green 绿色 Color.blue 蓝色 <BR><BR> Color.yellow
黄色 Color.cyan 青色 <BR><BR> Color.magenta 深红 Color.pink 粉红色
<BR><BR> Color.orange 橙色 <BR><BR> 表11-1 预定义颜色一览表 <BR><BR> 2. 使用自定义颜色:
<BR><BR> 然而,我们生活在一个色彩斑斓的世界中,仅用这13种颜色来体现我们的心情,恐怕是太少了一些。为了让您能够充分发挥美术天才,在您的程序中更加色彩缤纷,我们自己动手定义一些喜欢的颜色。
<BR><BR> 要自己定义颜色,首先要学习一个常识。我们在小时候用颜料做画时就知道,有三种最基本的颜色(红、蓝、黄),只要各取一些就可以调出各种不同的颜色。
<BR><BR> 而在电脑的世界中,也是类似,但是我们要使用光学三原色,而不是颜料三原色。那就是RGB(Red、Green、Blue,红、绿、蓝)。我们将不同量的红、绿、蓝混合在一起就可以得到我们想要的颜色,当然这里需要经验和尝试。
<BR><BR> 使用下面的方法就可以完成“调色”工作: <BR><BR><BR>Color(int red,int green,int
blue) <BR><BR><BR><BR> 其中red、green、blue代表我们取的量,值从(0-255)之间。例如:
<BR><BR> Color black=new Color(0,0,0) 没有光嘛,当然是黑色; <BR><BR> Color
white=new Color(255,255,255) 全来了,就是白色; <BR><BR> Color gray=new
Color(128,128,128) 各一半,就是灰色。 <BR><BR> 实例说明
<BR><BR> 好了,我们通过一个实践,一方面了解一下颜色的使用,另一方面也认识一下Java中预定义的各种颜色的真实效果。
<BR><BR> 源程序:useColor.java <BR><BR><BR>import javax.swing.*; <BR>import
java.applet.*; <BR>import java.awt.*; <BR>public class useColor extends
JApplet <BR>{ <BR>public void init() <BR>{ <BR>JPanel
panel1=(JPanel)getContentPane(); <BR>panel1.setLayout(new
GridLayout(4,4)); <BR>JButton button1=new JButton("black");
<BR>button1.setForeground(Color.white);
<BR>button1.setBackground(Color.black); <BR>panel1.add(button1);
<BR>JButton button2=new JButton("darkGray");
<BR>button2.setBackground(Color.darkGray); <BR>panel1.add(button2);
<BR>JButton button3=new JButton("gray");
<BR>button3.setBackground(Color.gray); <BR>panel1.add(button3);
<BR>JButton button4=new JButton("lightGray");
<BR>button4.setBackground(Color.lightGray); <BR>panel1.add(button4);
<BR>JButton button5=new JButton("white");
<BR>button5.setBackground(Color.white); <BR>panel1.add(button5);
<BR>JButton button6=new JButton("red");
<BR>button6.setBackground(Color.red); <BR>panel1.add(button6); <BR>JButton
button7=new JButton("green"); <BR>button7.setBackground(Color.green);
<BR>panel1.add(button7); <BR>JButton button8=new JButton("blue");
<BR>button8.setBackground(Color.blue); <BR>panel1.add(button8);
<BR>JButton button9=new JButton("yellow");
<BR>button9.setBackground(Color.yellow); <BR>panel1.add(button9);
<BR>JButton button10=new JButton("cyan");
<BR>button10.setBackground(Color.cyan); <BR>panel1.add(button10);
<BR>JButton button11=new JButton("magenta");
<BR>button11.setBackground(Color.magenta); <BR>panel1.add(button11);
<BR>JButton button12=new JButton("pink");
<BR>button12.setBackground(Color.pink); <BR>panel1.add(button12);
<BR>JButton button13=new JButton("orange");
<BR>button13.setBackground(Color.orange); <BR>panel1.add(button13); <BR>}
<BR>}
<BR><BR><BR><BR> 在这个程序中,使用了最愚笨的方法完成了这个工作,相信无须点评,大家也能够一目了解了理会这个程序的用意。
<BR><BR> 下图就是这个程序的输出,大家从这个图中也就能够知道每个预定义颜色的样子: <BR><BR><BR> 图11-11
useColor.java的输出 <BR><BR> 自测练习 <BR><BR> 1) 在Java语言中,自定义颜色可以有_______。
<BR><BR> a.无数种颜色 b.32K色 c.16M色 <BR><BR> 2) 以下___________是绿色。
<BR><BR> a.new Color(0,255,0) b.new Color(255,255,255) c.new Color(0,0,0)
<BR><BR> 3) Java语言采用的是__________三原色。 <BR><BR> a.颜料 b.光学 <BR><BR> 4)
Java语言的三原色是___________。 <BR><BR> a.红、黄、蓝 b.红、绿、蓝 c.红、黄、绿 <BR><BR> 5)
一个按钮的颜色定义如下: <BR><BR><BR>button.setBackground(Color.black)
<BR><BR><BR><BR> 那么,我们________看到按钮上的标签文字。 <BR><BR> a.能 b.不能
<BR><BR> 请说明原因:
<BR><BR> ____________________________________________________________________
<BR><BR> 练习答案 <BR><BR> 1)c
16M色,这很简单,三原色都可以取0-255,共256(28)个量,则它们的组合就是256*256*256,即224,也就是16M,因此可表示16M色。
<BR><BR> 2)a (0,255,0)说明0红光、255绿光、0蓝光,不是绿色是什么色? <BR><BR> 3)b
<BR><BR> 4)b 光学三原色,红、绿、蓝。 <BR><BR> 5)b
不能,这是因为默认情况下,前景色是黑色。现在我们又将背景也设置为黑色。就象在黑布上用黑钢笔写字一样,是看不到的。 <BR>
<P align=right>整理发布:admin</P></TD></TR>
<TR>
<TD
style="BORDER-RIGHT: #c0c0c0 1px solid; BORDER-TOP: #c0c0c0 1px solid; BORDER-LEFT: #c0c0c0 1px solid; BORDER-BOTTOM: #c0c0c0 1px solid"
vAlign=top width="100%" height=11>
<P align=left><FONT color=#7a7978>文摘分类>> </FONT><FONT
color=#999999>编程基础 | </FONT><FONT color=#7a7978>阅读次数>>
</FONT><FONT color=#999999>459 | </FONT><FONT
color=#7a7978>推荐人数>> </FONT><FONT color=#999999>0 |
</FONT><FONT color=#7a7978>整理日期>> </FONT><FONT
color=#999999>2003-03-07</FONT></P></TD></TR></TBODY></TABLE></CENTER></DIV>
<P align=center><INPUT class=rim onclick=window.close() type=button value=关闭窗口 name=close></P></BODY></HTML>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -