⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 java入门(11) 让程序更动人.htm

📁 JAVA入门  很好的学习JAVA的资料 很适合初学者
💻 HTM
📖 第 1 页 / 共 3 页
字号:
      <BR><BR>  1)___________包中定义的部件能够直接使用图像。 <BR><BR>  a.java.awt.* 
      b.java.swing.* c.javax.swing.* <BR><BR>  2) 一个按钮________同时拥用文本标签和图像。 
      <BR><BR>  a.不能 b.能 <BR><BR>  3) 按钮中可以直接使用____________对象。 
      <BR><BR>  a.ImageIcon b.Image c.Icon <BR><BR>  4) 
      取得当前目录的URL使用_____________方法。 <BR><BR>  a.getURLbase b.getURL c.getCodeBase 
      <BR><BR>  5) 一个标签________同时拥用文本标签和图像。 <BR><BR>  a.能 b.不能 <BR><BR>  6) 
      编写一个程序,在默认情况下,只显示两个按钮:MasterCard和VisaCard, <BR><BR><BR>  图11-4 练习题图(1) 
      <BR><BR>  当按下MasterCard按钮时,则显示MasterCard的图像: <BR><BR><BR>  图11-5 练习题图(2) 
      <BR><BR>  而按下VisaCard按钮时,显示M VisaCard的图像。如下图所示: <BR><BR><BR>  图11-6 
      练习题图(3) <BR><BR>  注:这两幅图分别是c:windowssystemoobdgmc.jpg和bgvisa.jpg。 
      <BR><BR>  练习答案 <BR><BR>  1)c 
      在java.awt包定义的部件对图像的支持不好;java.swing包是不存在的,应该是javax.swing。 <BR><BR>  2)b 
      当然可以。 <BR><BR>  3)a Image对象应先转成ImageIcon对象。 <BR><BR>  4)c 
      没有什么好解释的,提供的方法名就是getCodeBase()。 <BR><BR>  5)a 当然可以。 <BR><BR>  6)以下是一个实现实例: 
      <BR><BR>  源程序:lianxi11_1.java <BR><BR><BR>import java.applet.*; <BR>import 
      java.awt.*; <BR>import javax.swing.*; <BR>import java.awt.event.*; 
      <BR>public class lianxi11_1 extends JApplet <BR>{ <BR>Image image1,image2; 
      <BR>ImageIcon icon1,icon2; <BR>JButton mc,visa; <BR>JLabel imagelabel; 
      <BR>public void init() <BR>{ <BR>Frame frame1=new Frame("lianxi11_1"); 
      <BR>frame1.setLayout(new BorderLayout()); 
      <BR>image1=getImage(getCodeBase(),"bgmc.jpg"); <BR>icon1=new 
      ImageIcon(image1); <BR>image2=getImage(getCodeBase(),"bgvisa.jpg"); 
      <BR>icon2=new ImageIcon(image2); <BR>imagelabel=new JLabel(); 
      <BR>frame1.add(imagelabel,BorderLayout.CENTER); <BR>JPanel 
      panel1=(JPanel)getContentPane(); <BR>panel1.setLayout(new 
      GridLayout(1,2)); <BR>mc=new JButton("MasterCard"); <BR>visa=new 
      JButton("VisaCard"); <BR>panel1.add(mc); <BR>panel1.add(visa); 
      <BR>mc.addActionListener(new ActionListener() <BR>{ <BR>public void 
      actionPerformed(ActionEvent evt) <BR>{ <BR>imagelabel.setIcon(icon1); 
      <BR>} <BR>}); <BR>visa.addActionListener(new ActionListener() <BR>{ 
      <BR>public void actionPerformed(ActionEvent evt) <BR>{ 
      <BR>imagelabel.setIcon(icon2); <BR>} <BR>}); 
      <BR>frame1.add(panel1,BorderLayout.SOUTH); <BR>frame1.pack(); 
      <BR>frame1.show(); <BR>} <BR>} <BR><BR><BR><BR>  11.2 声音 <BR><BR>  传授新知 
      <BR><BR>  有时,我们需要在程序中释放声音,我可以在import 
      java.applet.*包的支持下,让Java程序能够播放WAV、AU和SND格式的声音文件。 <BR><BR>  1.装载声音文件 
      <BR><BR>  与引用图像文件一样,我们也要将声音文件装载进来,才能够供Java程序使用。同样的,我们还是使用URL来定位一个声音文件。 
      <BR><BR>  在Java语言中装载声音文件,是使用getAudioClip方法,其语法格式是: <BR><BR><BR>public 
      AudioClip getAudioClip(String url) <BR>public AudioClip 
      getAudioClip(String url,String name) 
      <BR><BR><BR><BR>  同样的,我们可以调用getCodeBase()方法来获取当前目录的URL,这样就可以很方便地调用当前目录下的声音文件。例如: 
      <BR><BR><BR>AudioClip clip1=getAudioClip(getCodeBase(),”carbrake.wav) 
      <BR><BR><BR><BR>  注:carbreak.wav是office97中带的,你可以在c:windowsmediaoffice97目录中找到,在此假设已拷贝到了c:javastudy目录中。 
      <BR><BR>  这样,我们就获得了一个AudioClip(声音片段)clip1,这个声音片段中存放的就是声音文件carbreak.wav。 
      <BR><BR>  2.操作声音片段 
      <BR><BR>  使用声音比使用图像要简单得多,我们现在就可以直接对一个AudioClip(声音片段)进行操作了,不再需要转换(图像就得从Image转成ImageIcon)。 
      <BR><BR>  1) 播放声音片段: <BR><BR>  声音片段名.play() 
      <BR><BR>  一句话,就是直接调用声音片段对象的play()方法就可以将其播放出来。 <BR><BR>  2) 停止播放: 
      <BR><BR>  声音片段名.stop() <BR><BR>  很简单吧,play就是播放,stop就是停止,好象在用放音机一样。 
      <BR><BR>  3) 循环播放: <BR><BR>  声音片段名.loop() 
      <BR><BR>  有时,我们可能会需要一直播放一段声音,在Java语言中提供了一个很简单的方法来实现,那就是声音片段的loop方法。 
      <BR><BR>  实例说明 
      <BR><BR>  首先将c:windowsmediaoffice97carbrake.wav拷贝到c:javastudy目录下,然后输入以下源程序。 
      <BR><BR>  源程序:useAudio.java <BR><BR><BR>import javax.swing.*; <BR>import 
      java.applet.*; <BR>import java.awt.*; <BR>import java.awt.event.*; 
      <BR>public class useAudio extends JApplet <BR>{ <BR>AudioClip carbrake; 
      <BR>public void init() <BR>{ <BR>JPanel panel1=(JPanel)getContentPane(); 
      <BR>panel1.setLayout(new GridLayout(3,1)); 
      <BR>carbrake=getAudioClip(getCodeBase(),"carbrake.wav"); <BR>JButton 
      buttonPlay=new JButton("Play"); <BR>JButton buttonStop=new 
      JButton("Stop"); <BR>JButton buttonLoop=new JButton("Loop"); 
      <BR>panel1.add(buttonPlay); <BR>panel1.add(buttonStop); 
      <BR>panel1.add(buttonLoop); <BR>buttonPlay.addActionListener(new 
      ActionListener() <BR>{ <BR>public void actionPerformed(ActionEvent evt) 
      <BR>{ <BR>carbrake.stop(); <BR>carbrake.play(); <BR>} <BR>}); 
      <BR>buttonStop.addActionListener(new ActionListener() <BR>{ <BR>public 
      void actionPerformed(ActionEvent evt) <BR>{ <BR>carbrake.stop(); <BR>} 
      <BR>}); <BR>buttonLoop.addActionListener(new ActionListener() <BR>{ 
      <BR>public void actionPerformed(ActionEvent evt) <BR>{ 
      <BR>carbrake.stop(); <BR>carbrake.loop(); <BR>} <BR>}); <BR>} <BR>} 
      <BR><BR><BR><BR>  这个程序经编译后用appletviewer可以看到如下界面: <BR><BR><BR>  图11-7 
      useAudio.java的程序界面 
      <BR><BR>  当你按下play按钮时,你就会听到一声汽车的刹车声。而当你按下Loop按钮时,你就会听到边续不断的汽车刹车声。当你厌倦了的时候,就按下stop按钮,声音就消失了。 
      <BR><BR>  自测练习 <BR><BR>  1) 在Java语言中,使用_______类来装载声音文件。 <BR><BR>  a.Sound 
      b.SoundClip c.AudioClip d.Clip <BR><BR>  2) ___________包提供了对声音的支持。 
      <BR><BR>  a.java.awt.* b.javax.swing.* c.java.swing.* d.javax.awt.* 
      <BR><BR>  3) 在c:windowsmedia目录下有一个The Microsoft 
      Sound.wav,它是Windows启动时的欢迎乐,在c:windowsmediaoffice97目录下有一个chimes.wav,它是一段十分和谐的音乐。下面请您编写一个程序,构建两个按钮,第一个是Microsoft 
      Sound,按下时就播放第一个音乐;第二个按钮则是chimes,按下时就播放第二个音乐。程序界面如下图所示: <BR><BR><BR>  图11-8 
      练习题图 
      <BR><BR>  ____________________________________________________________________ 
      <BR><BR>  ____________________________________________________________________ 
      <BR><BR>  ____________________________________________________________________ 
      <BR><BR>  练习答案 <BR><BR>  1)c 在Java中,使用AudioClip来装载声音文件。 <BR><BR>  2)a 
      <BR><BR>  3)以下是一个程序实例: <BR><BR>  源程序:lianxi11_2.java <BR><BR><BR>import 
      javax.swing.*; <BR>import java.applet.*; <BR>import java.awt.*; <BR>import 
      java.awt.event.*; <BR>public class lianxi11_2 extends JApplet <BR>{ 
      <BR>AudioClip clip1,clip2; <BR>public void init() <BR>{ <BR>JPanel 
      panel1=(JPanel)getContentPane(); <BR>panel1.setLayout(new 
      GridLayout(2,1)); <BR>clip1=getAudioClip(getCodeBase(),"The Microsoft 
      Sound.wav"); <BR>clip2=getAudioClip(getCodeBase(),"chimes.wav"); 
      <BR>JButton button1=new JButton("Microsoft Sound"); <BR>JButton 
      button2=new JButton("Play chime"); <BR>panel1.add(button1); 
      <BR>panel1.add(button2); <BR>button1.addActionListener(new 
      ActionListener() <BR>{ <BR>public void actionPerformed(ActionEvent evt) 
      <BR>{ <BR>clip2.stop(); <BR>clip1.play(); <BR>} <BR>}); 
      <BR>button2.addActionListener(new ActionListener() <BR>{ <BR>public void 
      actionPerformed(ActionEvent evt) <BR>{ <BR>clip1.stop(); <BR>clip2.play(); 
      <BR>} <BR>}); <BR>} <BR>} <BR><BR><BR><BR>  11.3 改变字体 <BR><BR>  传授新知 
      <BR><BR>  不知不觉中,我们已经学习了很多的关于Java的知识了,从字符界面到图形界面,从呆滞的文字到多彩的图像、声音…… 
      <BR><BR>  不过,不知道大家注意到没有,我们一直没有改变程序中显示出来的文字的字体!现在,我们就来补一下这方面的知识。 
      <BR><BR>  字体是一个十分神奇的东西,例如,我们使用了黑体字体现出了各个章节,使用楷体字体现出了一些注释、提示、说明等等。它使得我们的文本更生动、更直观。 
      <BR><BR>  字体由三种属性决定: <BR><BR>  1) 字体名(family name) 
      <BR><BR>  字体名可以分成两大类:一种是中文字体,如宋体、楷体、黑体等;另一种是英文字体,如Arial、Times New Roman等等; 
      <BR><BR>  小知识: 
      <BR><BR>  对于英文字体中有两个术语:“等宽字体”与“变宽字体”,等宽字体是指每一英文字母的宽度一样大;而变宽字体则不然, 
      m与l所占的宽度就不同。 <BR><BR>  2) 大小(size) 
      <BR><BR>  与字体名一样,大小也有两种衡量方式:一种是五号、六号,号数越小字越大;另一种是磅值(这是一种印刷界的通用单位),如11磅、12磅,它们的值越大,字越大。不过在Java中只支持后者,也就是磅值(point)。 
      <BR><BR>  3) 风格(style) <BR><BR>  如斜体、粗体、下划线等。在Java中有四种字体风格,由Font类的值来定义。 
      <BR><BR>  ¨ Font.PLAIN(普通) <BR><BR>  ¨ Font.BOLD(加粗) <BR><BR>  ¨ 
      Font.ITALIC(斜体) <BR><BR>  ¨ Font.BOLD+ Font.ITALIC(粗斜体) 
      <BR><BR>  也就是说,在Java语言中并不支持下划线这种风格。 
      <BR><BR>  好了,我们已经知道了字体的详细内容,下面我们来看一下如何在程序中设置、改变字体?很简单,我们先使用以下构造器构造一个字体对象: 
      <BR><BR><BR>public Font(String familyName,int style,int size) 
      <BR><BR><BR><BR>  然后,调用对象的setFont方法来设置字体: <BR><BR><BR>public void 
      setFont(Font font) 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -