包名是不一样的,比如以前的com.sun.java现在改为javax.swing等等
解决方案 »
- 使用POI将ppt幻灯片导出为图片,但是其中的中文都是乱码,如何解决?
- 帮我解释一下这段程序(红色的是什么意思)
- 急!!请问applet 中如何调用外部包jar?
- 大家来帮帮忙!!!
- 接口可以初始化变量吗?....
- 类的高级加载问题,请帮帮我丫。在线等待指点呢
- 我在作一个webmail,怎么样把23000字节,让它显示成23K呢(给分的纯对。)
- 帮助我吧,这里有一份解答,是不是正确?帮我改一改,让人看不出一样就好了
- 请教一个关于Tomcat下配制虚拟主机的问题,请高手指点???????
- 为什么java强制转换成byte类型不起作用
- 关于java程序执行外部命令的问题
- jbuilder7下如何让jdbtable可以一次选中多行??——弱弱地问
或许还要装JRE等别的才能执行的啊。
主程序代码如下:import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.util.Random;
public class Teris extends JFrame {
//constructor
public Teris() {
addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
dispose();
System.exit(0);
}
});
} public void init()
{
//Add menus
TheMenuListener tml = new TheMenuListener(); ...........
gameNewItem.addActionListener(tml);
gamePauseItem.addActionListener(tml);
gameResumeItem.addActionListener(tml);
gameExitItem.addActionListener(tml); ...........
optionImageItem.addActionListener(tml);
optionSpeedItem.addActionListener(tml);
//Set mnemonic key
............. //Set panel compoents' position
............. //Control buttons
.......... //initialize the background value of terisContainer
// 10 * 20 need bounds, so 12 * 22 required
....... //initialize current teris shape
...........
//initialize select image dialog for later use
........... //capture key input
addKeyListener(new UserKeyInputAction()); //control clock
......... //show me
.........
} private void changeImage(int img)
{
...........
} public void removeLayers()
{
..............
}
public void restartGame()
{
...............
} public static void main(String args[]) { //the main())()Main@@@@@@@@@
Teris mainFrame = new Teris();
mainFrame.init();
} class UserKeyInputAction implements KeyListener
{
public void keyPressed(KeyEvent e)
{
int key = e.getKeyCode();
switch(key){
case KeyEvent.VK_UP:
currentShape.rotateRight();
break;
case KeyEvent.VK_DOWN:
currentShape.dropDown();
break;
case KeyEvent.VK_LEFT:
currentShape.moveLeft();
break;
case KeyEvent.VK_RIGHT:
currentShape.moveRight();
break;
case KeyEvent.VK_ESCAPE:
break;
case KeyEvent.VK_Z:
currentShape.rotateLeft();
break;
case KeyEvent.VK_X:
currentShape.rotateRight();
break; }
}
public void keyReleased(KeyEvent e)
{}
public void keyTyped(KeyEvent e)
{}
}
class TheMenuListener implements ActionListener
{
public void actionPerformed(ActionEvent e)
{ //找到了Timer类, stop()
timer.stop();
if(e.getSource() == gameNewItem || e.getSource() == gameNewButton){
pauseScreenPanel.setVisible(false);
terisContainer.setVisible(true);
controlPanel.setVisible(true);
bulletinBoard.setVisible(true);
optionMenu.setEnabled(true);
gamePauseItem.setEnabled(true);
gameResumeItem.setEnabled(false);
restartGame();
gameStatus = GAME_RUNNING;
timer.start();
}else if(e.getSource() == gamePauseItem || e.getSource() == gamePauseButton){
terisContainer.setVisible(false);
controlPanel.setVisible(false);
bulletinBoard.setVisible(false);
pauseScreenPanel.setVisible(true);
optionMenu.setEnabled(false);
gamePauseItem.setEnabled(false);
gameResumeItem.setEnabled(true);
}else if(e.getSource() == gameResumeItem){
pauseScreenPanel.setVisible(false);
terisContainer.setVisible(true);
controlPanel.setVisible(true);
bulletinBoard.setVisible(true);
optionMenu.setEnabled(true);
gamePauseItem.setEnabled(true);
gameResumeItem.setEnabled(false);
timer.start();
}else if(e.getSource() == gameExitItem || e.getSource() == gameExitButton){
System.exit(0);
}else if(e.getSource() == optionImageItem || e.getSource() == optionImageButton){
selectImageDialog.show();
if(selectImageDialog.ok)
currentShape.changeImage(selectImageDialog.result);
newShape.changeImage(selectImageDialog.result);
changeImage(selectImageDialog.result);
timer.start(); //用到了Timer类
}else if(e.getSource() == optionSpeedItem || e.getSource() == optionSpeedButton){
selectSpeedDialog.show();
if(selectSpeedDialog.ok){
timer.setDelay(selectSpeedDialog.result*100); // Timer 的Delay函数
currentSpeed = selectSpeedDialog.result;
currentSpeedLabel.setText("Speed : " + currentSpeed);
}
timer.start(); //Timer
}
}
}
class TimerListener implements ActionListener
{
public void actionPerformed(ActionEvent e)
{
if(gameStatus != GAME_RUNNING)
return;
if(currentShape.waitingForFix)
currentShape.fixMe();
else
currentShape.dropDown();
}
} public TerisShape currentShape, newShape;
public boolean [][]terisContainerData;
public JLabel [][]terisContainerLabel;
//Dialogs
........... //Game status
.............. //Three main panels
.............. //Game speed control
.............. //Menus
............... //Control panel
............... String urlImage = "Images\\";
//String urlImage = "d:\\Daniel Woo\\Teris\\Images\\";