java小游戏打地鼠.docx
《java小游戏打地鼠.docx》由会员分享,可在线阅读,更多相关《java小游戏打地鼠.docx(19页珍藏版)》请在冰豆网上搜索。
java小游戏打地鼠
/*
*GameJFrame.java
*
*Createdon__DATE__,__TIME__
*/
packagecom.insigma.Game;
importjava.awt.Cursor;
importjava.awt.Dimension;
importjava.awt.Point;
importjava.awt.Toolkit;
importjava.awt.event.MouseEvent;
importjava.awt.event.MouseListener;
importjavax.swing.JDialog;
importjavax.swing.JFrame;
importjavax.swing.JLabel;
importjavax.swing.JOptionPane;
importjavax.swing.UIManager;
importorg.jvnet.substance.SubstanceLookAndFeel;
importorg.jvnet.substance.theme.SubstanceTerracottaTheme;
importcom.insigma.Util.Image;
/**
*
*@author__USER__
*/
publicclassGameJFrameextendsjavax.swing.JFrameimplementsRunnable{
privateJLabel[]carb=newJLabel[9];
/**CreatesnewformGameJFrame*/
publicGameJFrame(){
initComponents();
this.setLocationRelativeTo(null);//居中显示
try{
UIManager.setLookAndFeel(newSubstanceLookAndFeel());
JFrame.setDefaultLookAndFeelDecorated(true);
JDialog.setDefaultLookAndFeelDecorated(true);
SubstanceLookAndFeel
.setCurrentTheme(newSubstanceTerracottaTheme());
//SubstanceLookAndFeel.setSkin(newEmeraldDuskSkin());
//SubstanceLookAndFeel.setCurrentButtonShaper(new
//ClassicButtonShaper());
//SubstanceLookAndFeel.setCurrentWatermark(new
//SubstanceBubblesWatermark());
//SubstanceLookAndFeel.setCurrentBorderPainter(new
//StandardBorderPainter());
//SubstanceLookAndFeel.setCurrentGradientPainter(new
//StandardGradientPainter());
//SubstanceLookAndFeel.setCurrentTitlePainter(new
//FlatTitePainter());
}catch(Exceptione){
System.err.println("Somethingwentwrong!
");
}
//设置窗体不能变大
setResizable(false);
//设置背景图片
JLabelbackground=newJLabel(Image.BACKGROUND);
jPanel1.setOpaque(false);
jPanel1.add(background,newInteger(Integer.MIN_VALUE));
background.setBounds(0,0,Image.BACKGROUND.getIconWidth(),
Image.BACKGROUND.getIconHeight());
carb[0]=jLabel1;
carb[0].setBounds(135,120,80,70);
carb[0].addMouseListener(newCatcher());
carb[1]=jLabel2;
carb[1].setBounds(280,120,80,70);
carb[1].addMouseListener(newCatcher());
carb[2]=jLabel3;
carb[2].setBounds(414,120,80,70);
carb[2].addMouseListener(newCatcher());
carb[3]=jLabel4;
carb[3].setBounds(122,210,80,70);
carb[3].addMouseListener(newCatcher());
carb[4]=jLabel5;
carb[4].setBounds(280,210,80,70);
carb[4].addMouseListener(newCatcher());
carb[5]=jLabel6;
carb[5].setBounds(436,210,80,70);
carb[5].addMouseListener(newCatcher());
carb[6]=jLabel7;
carb[6].setBounds(91,320,80,70);
carb[6].addMouseListener(newCatcher());
carb[7]=jLabel8;
carb[7].setBounds(279,320,80,70);
carb[7].addMouseListener(newCatcher());
carb[8]=jLabel9;
carb[8].setBounds(461,320,80,70);
carb[8].addMouseListener(newCatcher());
//使用绝对定位控制label在pane中的位置,与图片对应
jPanel1.setLayout(null);
//设置面板大小
jPanel1.setPreferredSize(newDimension(Image.BACKGROUND.getIconWidth(),
Image.BACKGROUND.getIconHeight()));
//鼠标样式
Toolkittoolkit=Toolkit.getDefaultToolkit();
Cursorcursor1=toolkit.createCustomCursor(Image.HAMMER2.getImage(),
newPoint(0,0),"normal");
Cursorcursor2=toolkit.createCustomCursor(Image.HAMMER1.getImage(),
newPoint(0,0),"capture");
//鼠标监听器
addMouseListener(newMouseCrab(cursor1,cursor2));
for(inti=0;icarb[i].addMouseListener(newMouseCrab(cursor1,cursor2));
}
}
//GEN-BEGIN:
initComponents
//
privatevoidinitComponents(){
jPanel1=newjavax.swing.JPanel();
jLabel1=newjavax.swing.JLabel();
jLabel2=newjavax.swing.JLabel();
jLabel3=newjavax.swing.JLabel();
jLabel4=newjavax.swing.JLabel();
jLabel5=newjavax.swing.JLabel();
jLabel6=newjavax.swing.JLabel();
jLabel7=newjavax.swing.JLabel();
jLabel8=newjavax.swing.JLabel();
jLabel9=newjavax.swing.JLabel();
jLabel10=newjavax.swing.JLabel();
jLabel11=newjavax.swing.JLabel();
jLabel12=newjavax.swing.JLabel();
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
setTitle("\u6253\u5730\u9f20\u6e38\u620f");
jLabel10.setIcon(newjavax.swing.ImageIcon(getClass().getResource(
"/images/start.png")));//NOI18N
jLabel10.addMouseListener(newjava.awt.event.MouseAdapter(){
publicvoidmouseClicked(java.awt.event.MouseEventevt){
jLabel10MouseClicked(evt);
}
});
jLabel11.setForeground(newjava.awt.Color(255,0,51));
jLabel11.setText("0");
jLabel12.setForeground(newjava.awt.Color(0,0,204));
jLabel12.setText("0");
javax.swing.GroupLayoutjPanel1Layout=newjavax.swing.GroupLayout(
jPanel1);
jPanel1.setLayout(jPanel1Layout);
jPanel1Layout
.setHorizontalGroup(jPanel1Layout
.createParallelGroup(
javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(
jPanel1Layout
.createSequentialGroup()
.addGroup(
jPanel1Layout
.createParallelGroup(
javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(
jPanel1Layout
.createSequentialGroup()
.addGap(223,
223,
223)
.addComponent(
jLabel8))
.addGroup(
jPanel1Layout
.createSequentialGroup()
.addGap(245,
245,
245)
.addComponent(
jLabel10))
.addGroup(
jPanel1Layout
.createSequentialGroup()
.addGroup(
jPanel1Layout
.createParallelGroup(
javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(
jPanel1Layout
.createSequentialGroup()
.addGap(35,
35,
35)
.addComponent(
jLabel1))
.addGroup(
jPanel1Layout
.createSequentialGroup()
.addGap(191,
191,
191)
.addComponent(
jLabel3)
.addGroup(
jPanel1Layout
.createParallelGroup(
javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(
jPanel1Layout
.createSequentialGroup()
.addPreferredGap(
javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(
jLabel2))
.addGroup(
jPanel1Layout
.createSequentialGroup()
.addGap(181,
181,
181)
.addComponent(
jLabel4)))
.addGap(67,
67,
67))
.addGroup(
jPanel1Layout
.createSequentialGroup()
.addGroup(
jPanel1Layout
.createParallelGroup(
javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(
jPanel1Layout
.createSequentialGroup()
.addGap(158,
158,
158)
.addComponent(
jLabel7))
.addGroup(
javax.swing.GroupLayout.Alignment.TRAILING,
jPanel1Layout
.createSequentialGroup()
.addContainerGap(
380,
Short.MAX_VALUE)
.addComponent(
jLabel9)
.addGap(57,
57,
57)))
.addGap(2,
2,
2)))
.addPreferredGap(
javax.swing.LayoutStyle.ComponentPlacement.RELATED,
javax.swing.GroupLayout.DEFAULT_SIZE,
Short.MAX_VALUE)
.addComponent(
jLabel5)
.addGap(139,
139,
139)
.addComponent(
jLabel6)))
.addContainerGap())
.addGroup(
javax.swing.GroupLayout.Alignment.TRAILING,
jPanel1Layout
.createSequentialGroup()
.addContainerGap(518,Short.MAX_VALUE)
.addGroup(
jPanel1Layout
.createParallelGroup(
javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(
jLab