【Java开源代码栏目提醒】:网学会员--在 Java开源代码编辑为广大网友搜集整理了:Change_Button.java绩等信息,祝愿广大网友取得需要的信息,参考学习。
package chp15;
import java.applet.*;
import java.awt.*;
import java.awt.event.*;
import java.net.*;
//页面响应鼠标事件
public class Change_Button extends Applet implements MouseListener {
private int width, height;// 声明int类变量
private Image image, img1, img2, img3;// 声明Image类型变量
private Label la = new Label("多变的按扭");// 创建一个带初始值的Label对象
private Graphics grap;// 声明Graphics变量
private MediaTracker media;// 声明MediaTracker变量
private AudioClip audioA, audioB;// 声明AudioClip变量
public void init() {// 为Applet初始化
audioA = getAudioClip(this.getCodeBase(), "lx.wav");// 创建audioA对象
audioB = getAudioClip(getCodeBase(), "hh.wav");// //创建audioB对象
width = getSize().width;// 返回Applet的宽度
height = getSize().height;// 返回Applet的高度
image = createImage(width, height);// 根据参数创建一个Image对象
grap = image.getGraphics();// 根据图像创建Graphics对像
media = new MediaTracker(this);// MediaTracker对像实例化
img1 = getImage(getCodeBase(), "b1.jpg");// 根据参数创建Image对象
media.addImage(img1, 0);// 将img1放入media对象中
img2 = getImage(getCodeBase(), "b3.jpg");
media.addImage(img2, 1);
img3 = getImage(getCodeBase(), "b2.jpg");
media.addImage(img3, 2);
try {
media.waitForAll();// 等待media加载所有的图像
} catch (InterruptedException e) {
}
la.setSize(100, 5);
la.setForeground(Color.pink);// 设置标签的前景颜色
this.add(la, BorderLayout.NORTH);// 将标签组件加载到Applet中
addMouseListener(this);// 为Applet添加鼠标侦听事件
}
public void start() {// 开始Applet程序
grap.drawImage(img1, 0, 0, width, height, this);// 根据给定的参数绘制图像
repaint();
}
public void mouseClicked(MouseEvent e) {// 鼠标单击事件
}
public void mousePressed(MouseEvent e) {// 鼠标按下事件
grap.drawImage(img3, 0, 0, width, height, this);// 当鼠标被按下时所绘制的图像
audioA.stop();// audioA停止播放声音
audioB.play();// audioB开始播放声音
la.setSize(100, 20);
la.setBackground(Color.black);// 设置标签的背景颜色
la.setForeground(Color.yellow);// 设置标签的前景颜色
la.setText("audioB is playing");// 设置标签中要显示的内容
this.add(la, BorderLayout.NORTH);// 添加标签组件
repaint();// 重新绘制组件
}
public void mouseReleased(MouseEvent e) {// 鼠标释放事件
grap.drawImage(img2, 0, 0, width, height, this);
repaint();
la.setSize(100, 20);
audioB.stop();
audioA.play();
la.setBackground(Color.yellow);
la.setForeground(Color.black);
la.setText("audioA is playing");
this.add(la, BorderLayout.NORTH);
}
public void mouseEntered(MouseEvent e) {// 鼠标进入Applet所触发的事件
grap.drawImage(img2, 0, 0, width, height, this);
repaint();
}
public void mouseExited(MouseEvent e) {// 鼠标离开Applet所触发的事件
grap.drawImage(img1, 0, 0, width, height, this);
repaint();
}
public void paint(Graphics g) {
g.drawImage(image, 0, 0, width, height, this);
}
}
上一篇:
ChangeType.java
下一篇:
2018年汽车自驾运动营地攻防箭大赛总决赛圆满落幕