java實現潛艇大戰遊戲源碼

代碼如下

package com.util;

import java.awt.BorderLayout;

import java.awt.Color;

import java.awt.Dimension;

import java.awt.Graphics;

import java.awt.Graphics2D;

import java.awt.GridLayout;

import java.awt.Image;

import java.awt.Toolkit;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import java.util.Observable;

import javax.swing.JLabel;

import javax.swing.JPanel;

/*

* 進圖遊戲的主界面面板

*/

public class MainPanel extends JPanel

{

private static final long serialVersionUID = 1L;

private MyButton startButton;

private MyButton exitButton;

private JLabel helpLabel;

private JLabel helpLabel1;

private JLabel helpLabel2;

private JLabel helpLabel3;

private Image image;

private JLabel centerlabel;

private boolean isStart;

private boolean isExit;

private Observable obs;

public MainPanel(Observable ob)

{

obs = ob;

startButton = new MyButton("進入遊戲");

exitButton = new MyButton("退出遊戲");

helpLabel = new JLabel();

helpLabel1 = new JLabel();

helpLabel2 = new JLabel();

helpLabel3 = new JLabel();

centerlabel = new JLabel();

this.setLayout(new BorderLayout());

this.helpLabel.setPreferredSize(new Dimension(645,291));

this.helpLabel1.setPreferredSize(new Dimension(180,80));

this.helpLabel2.setPreferredSize(new Dimension(215,80));

this.helpLabel3.setPreferredSize(new Dimension(645,80));

this.centerlabel.setPreferredSize(new Dimension(460,80));

centerlabel.setLayout(new GridLayout(2,1));

centerlabel.add(this.startButton);

centerlabel.add(this.exitButton);

this.centerlabel.setBackground(new Color(255,255,0));

this.add(helpLabel,BorderLayout.NORTH);

this.add(helpLabel1,BorderLayout.EAST);

this.add(helpLabel2,BorderLayout.WEST);

this.add(helpLabel3,BorderLayout.SOUTH);

this.add(centerlabel,BorderLayout.CENTER);

image = Toolkit.getDefaultToolkit().getImage("imgs/主界面112.png");

// image = new ImageIcon(image).getImage();

this.startButton.addActionListener(

new ActionListener()

{

public void actionPerformed(ActionEvent e)

{

boolean flag = true;

MainPanel.this.setIsStart(flag);

MainPanel.this.obs.notifyObservers(MainPanel.this);

}

}

);

this.exitButton.addActionListener(

new ActionListener()

{

public void actionPerformed(ActionEvent e)

{

MainPanel.this.setExit(true);

}

}

);

}

public void paint(Graphics g)

{

super.paint(g);

Graphics2D g2 = (Graphics2D) g;

g2.drawImage(image,0,0, this.getWidth(), this.getHeight(),this);

super.paintComponents(g);

}

public boolean getIsStart()

{

return this.isStart;

}

public void setIsStart(boolean isStart)

{

this.isStart = isStart;

}

public boolean isExit() {

return isExit;

}

public void setExit(boolean isExit) {

this.isExit = isExit;

}

}

效果圖

b740dccf9dedaaa20e8c998fbd413f6c.png

6e27b845c683442541249420b023735c.png

以上就是java實現潛艇大戰遊戲源碼的詳細內容,更多關於java潛艇大戰遊戲的資料請關註WalkonNet其它相關文章!

推薦閱讀: