📄 b0f237a5185c001c1314a5c05ae52a38
字号:
/*
* author:Mandy
* date:2007-09-03
* all the events of the operational buttons, except the buttons in the map, are handled in this file
*/
package cn.nawang.test;
import java.awt.*;
import java.awt.event.*;
import java.util.Random;
import javax.swing.*;
//import javax.swing.event.*;
import javax.swing.Timer;
import java.text.DecimalFormat;
import sun.audio.*;
import java.io.*;
public class EventHandler implements ActionListener
{
public UI FrameUI;
public EventHandler(UI FrameUI)
{
this.FrameUI = FrameUI;
}
public void actionPerformed(ActionEvent e)
{
if(e.getSource() == this.FrameUI.startBtn)
startBtnClick();
else if(e.getSource() == this.FrameUI.refreshBtn)
refreshBtnClick();
else if(e.getSource() == this.FrameUI.hintBtn)
hintBtnClick();
else if(e.getSource() == this.FrameUI.bombBtn)
bombBtnClick();
else if(e.getSource() == this.FrameUI.showBtn)
showBtnClick();
else if(e.getSource() == this.FrameUI.aboutBtn)
aboutBtnClick();
else if(e.getSource() == this.FrameUI.settingBtn)
settingBtnClick();
else if(e.getSource() == this.FrameUI.helpBtn)
helpBtnClick();
}
public void startBtnClick()
{
//start to time
FrameUI.time = 0;
TimeWork startCount = new TimeWork();
FrameUI.timer = new Timer(100, startCount);
FrameUI.timer.start();
//play the background music
this.playMusic("bg.mid");
//layout the block image
int array[] = new int[170];
for(int i=0; i<FrameUI.level; i++)
{
array[i*4] = i+1;
array[i*4+1] = i+1;
array[i*4+2] = i+1;
array[i*4+3] = i+1;
}
Random ran = new Random();
int temp = 0;
int k = 0;
for(int j=array.length; j>0; j--)
{
k = ran.nextInt(j);
temp = array[k];
array[k] = array[j-1];
array[j-1] = temp;
}
for(int i=0; i<10; i++)
{
for(int j=0; j<17; j++)
{
FrameUI.map[i][j] = array[i*17+j];
}
}
int imageNo = 0;
for(int i=0; i<10; i++)
{
for(int j=0; j<17; j++)
{
imageNo = FrameUI.map[i][j];
FrameUI.imageBtn[i][j] = new JButton();
if(FrameUI.map[i][j]>0)
{
FrameUI.imageBtn[i][j].setIcon(UIBuilder.getIcon(imageNo+".gif"));
FrameUI.imageBtn[i][j].setBackground(new Color(0x374d76));
FrameUI.imageBtn[i][j].setBorderPainted(false);
FrameUI.imageBtn[i][j].setEnabled(true);
}
else
{
FrameUI.imageBtn[i][j].setIcon(null);
FrameUI.imageBtn[i][j].setBackground(new Color(0x374d76));
FrameUI.imageBtn[i][j].setEnabled(false);
FrameUI.imageBtn[i][j].setBorderPainted(false);
}
FrameUI.contentPanel.add(FrameUI.imageBtn[i][j]);
}
}
FrameUI.startBtn.setEnabled(false);
FrameUI.isOnStart = true;
}
public class TimeWork implements ActionListener
{
public void actionPerformed(ActionEvent event)
{
DecimalFormat timeFormat = new DecimalFormat("###.0");
FrameUI.time = (float)(FrameUI.time + 0.1);
if(FrameUI.time < 1)
FrameUI.timeLabel.setText(" Time: 000"+timeFormat.format(FrameUI.time));
else if(FrameUI.time >1 && FrameUI.time<10)
FrameUI.timeLabel.setText(" Time: 00"+timeFormat.format(FrameUI.time));
else if(FrameUI.time<100 && FrameUI.time>10)
FrameUI.timeLabel.setText(" Time: 0"+timeFormat.format(FrameUI.time));
else
FrameUI.timeLabel.setText(" Time: "+timeFormat.format(FrameUI.time));
}
}
public void playMusic(String filename)
{
try
{
FileInputStream fileau = new FileInputStream("cn/nawang/sound/"+filename);
AudioStream as = new AudioStream(fileau);
AudioPlayer.player.start(as);
}
catch (Exception e)
{
}
}
public void refreshBtnClick()
{
//System.out.println("refreshBtn Clicked");
JOptionPane.showMessageDialog(this.FrameUI.mainFrame, "refreshBtn Clicked!!");
}
public void hintBtnClick()
{
//System.out.println("hintBtn Clicked");
JOptionPane.showMessageDialog(this.FrameUI.mainFrame, "hintBtn Clicked!!");
}
public void bombBtnClick()
{
//System.out.println("bombBtn Clicked");
JOptionPane.showMessageDialog(this.FrameUI.mainFrame, "bombBtn Clicked!!");
}
public void showBtnClick()
{
//System.out.println("showBtn Clicked");
JOptionPane.showMessageDialog(this.FrameUI.mainFrame, "showBtn Clicked!!");
}
public void settingBtnClick()
{
//System.out.println("settingBtn Clicked");
JOptionPane.showMessageDialog(this.FrameUI.mainFrame, "settingBtn Clicked!!");
}
public void aboutBtnClick()
{
//System.out.println("aboutBtn Clicked");
JOptionPane.showMessageDialog(this.FrameUI.mainFrame, "aboutBtn Clicked!!");
}
public void helpBtnClick()
{
//System.out.println("helpBtn Clicked");
JOptionPane.showMessageDialog(this.FrameUI.mainFrame, "helpBtn Clicked!!");
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -