首页>代码>JAVA swing高仿愤怒的小鸟AngryBird源代码下载>/AngryBirds/src/AngryBirdsApplication/AngryBirdsMenu.java
/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package AngryBirdsApplication;

import java.awt.*;
import java.awt.event.*;
import java.util.ArrayList;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.swing.*;
import org.jbox2d.common.Vec2;


    
    
    
/**
 *
 * @author Sumomoxiao
 */
public class AngryBirdsMenu extends JPanel{
    ImageIcon background=new ImageIcon("src/AngryBirdsImagePack/background1.jpg");
    ArrayList<ImageIcon> animator=new ArrayList<ImageIcon>();
    ArrayList<ImageIcon> start=new ArrayList<ImageIcon>();
    ImageIcon[] exit=new ImageIcon[2];
    ImageIcon exit0=new ImageIcon("src/AngryBirdsImagePack/Menu/exit.png");
    ImageIcon exit1=new ImageIcon("src/AngryBirdsImagePack/Menu/exit2.png");
    ImageIcon cloud=new ImageIcon("src/AngryBirdsImagePack/menu/cloud.png");
    ImageIcon cloud1=new ImageIcon("src/AngryBirdsImagePack/menu/cloud1.png");
    ImageIcon cloud2=new ImageIcon("src/AngryBirdsImagePack/menu/cloud2.png");
    ImageIcon title=new ImageIcon("");  
    
    
    public static final int PREF_WIDTH = 1000;
    public static final int PREF_HEIGHT = 620;
    public int buttonscale=0,buttonscale1;
    public int tx=150;
    public int ty=191/2,ty1=75/2;
    boolean inside=false;
    boolean inside1=false;
    boolean shut=false;
    boolean flag=false;
    Graphics2D dbg;
    Image dbImage;
    ImageIcon cursor=new ImageIcon("src/AngryBirdsImagePack/Finger.png");
    CardLayout layoutmanager=new CardLayout();
    Vec2 cursorpoint=new Vec2();
    RenderingHints rh = new RenderingHints(
             RenderingHints.KEY_RENDERING,
             RenderingHints.VALUE_RENDER_DEFAULT);

    AngryBirdsMenu() {
        super();
        this.setPreferredSize(new Dimension(PREF_WIDTH,PREF_HEIGHT));
        this.setDoubleBuffered(true);
        animator.add(cloud);
        animator.add(cloud1);
        animator.add(cloud2);
        start.add(new ImageIcon("src/AngryBirdsImagePack/startbutton1.png"));
        start.add(new ImageIcon("src/AngryBirdsImagePack/startbutton.png"));
        exit[0]=exit0;exit[1]=exit1;
        rh.add(new RenderingHints(RenderingHints.KEY_TEXT_ANTIALIASING,RenderingHints.VALUE_TEXT_ANTIALIAS_ON));
    }

    
    @Override
    public int getHeight() {
        return PREF_HEIGHT;
    }

    @Override
    public int getWidth() {
        return PREF_WIDTH;
    }

    public boolean render( ) {
       if (dbImage == null) {
         dbImage = createImage(PREF_WIDTH, PREF_HEIGHT);
         if (dbImage == null) {
           return false;
        }
         dbg = (Graphics2D) dbImage.getGraphics();
         
      }
         dbg.setColor(Color.DARK_GRAY);
         rh.put(RenderingHints.KEY_RENDERING, RenderingHints.VALUE_RENDER_QUALITY);
         dbg.drawImage(background.getImage(), 0, 0, 1024,600,null);
         dbg.drawImage(title.getImage(), PREF_WIDTH/2-title.getImage().getWidth(null)/2, 30, this);
         dbg.drawImage(start.get(buttonscale).getImage(), PREF_WIDTH/2-tx, PREF_HEIGHT/2-ty+20,null);
         dbg.drawImage(exit[buttonscale1].getImage(), 0, PREF_HEIGHT-80-ty1,null);
         dbg.drawImage(cursor.getImage(),(int) cursorpoint.x,(int) cursorpoint.y, 25, 35, this);
         dbg.drawString("Copyright@ Li Xiao\n NJUPT", 410, 585);
         return true;
  }

    
    /*
    @Override
    public void paint(Graphics g) {
      
     g.drawImage(background.getImage(), 0, 0, 1048,660,null);
     g.drawImage(title.getImage(), PREF_WIDTH/2-title.getImage().getWidth(null)/2, 30, this);
     g.drawImage(start.get(buttonscale).getImage(), PREF_WIDTH/2-tx, PREF_HEIGHT/2-ty+50,null);
    }
    * 
    */

    
    public void paintscence(){
            flag=false;
        
        if(PREF_WIDTH!=0&&PREF_HEIGHT!=0) {
            flag=true;
        }
        if(flag) {
        Graphics2D g=(Graphics2D) this.getGraphics();
        if(g!=null&&dbImage!=null) {
        g.drawImage(dbImage, 0, 0, null);
        Toolkit.getDefaultToolkit().sync();
        g.dispose();
        }

    }
    }
    
    public Graphics getMenuDBDraw() {
        return dbImage.getGraphics();
    }
    
    public boolean isPainting() {
        return flag;
    }
    
    public  void addController(AngryBirdsMenuController mc){
        this.addMouseListener(mc);
        this.addMouseMotionListener(mc);
    }
    }
 class GameButton extends JComponent {
     ImageIcon bi;
     GameButton (ImageIcon i) {
     }

}    
    
    
    



最近下载更多
wangjialiang1  LV17 2023年8月24日
yerwiu  LV10 2023年7月30日
月影浮动  LV6 2020年5月22日
wei112233  LV15 2020年5月20日
远程调试_成品系统  LV15 2020年3月19日
wangzff  LV3 2020年2月26日
GG思密达da  LV9 2020年1月16日
zipper  LV8 2020年1月8日
yukaifeng  LV4 2019年12月30日
安妮的小熊  LV6 2019年12月23日
最近浏览更多
sunrui5555  LV1 4月19日
unprecedented 2023年11月16日
暂无贡献等级
微信网友_6738500712058880 2023年11月16日
暂无贡献等级
wangjialiang1  LV17 2023年8月24日
yerwiu  LV10 2023年7月30日
fmj0408  LV1 2023年6月19日
libobozi 2023年6月19日
暂无贡献等级
17683946472  LV9 2023年6月8日
泓鼎168  LV20 2023年5月10日
想把它染成绿色 2023年2月28日
暂无贡献等级
顶部 客服 微信二维码 底部
>扫描二维码关注最代码为好友扫描二维码关注最代码为好友