亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? mainframe.java~524~

?? 這是本科生的畢業設計
?? JAVA~524~
?? 第 1 頁 / 共 2 頁
字號:
package russiagame;

import javax.swing.*;
import com.borland.jbcl.layout.*;
import java.awt.*;
import java.awt.Toolkit;
import javax.swing.border.*;
import java.awt.event.*;
import javax.swing.event.*;

/**
 * <p>Title: </p>
 * <p>Description: </p>
 * <p>Copyright: Copyright (c) 2003</p>
 * <p>Company: </p>
 * @author not attributable
 * @version 1.0
 */

public class MainFrame
    extends JFrame {
    private Timer timer;      //方塊下落時間間隔
    private int nTime = 1000; //方塊下落速度
    private Root root;        //方塊
    private GameTable gGameAreaTable; //方塊下落區
    private PreviewTable gPreviewTable; //方塊預覽區

    private int intGraph; //標志創建哪一個要下落的方塊
    private int intNextGraph; //標志下一個要創建的方塊,即提前顯示下落塊
    private int intTotalScore = 0; //用來記錄總分數
    private boolean bCanMove = false; //標志是否響應鍵盤

    private Panel jMainPanel = new Panel(); //添加鍵盤監聽的Panel
    private GameAreaPanel jGamePanel; //方塊下落區域
    private PreviewPanel jNextGraphPanel; //方塊預覽區域

    private XYLayout xyLayout = new XYLayout();
    private TitledBorder titledBorder1;
    private JButton jStartButton = new JButton();
    private JButton jRestartButton = new JButton();
    private JButton jExitButton = new JButton();
    private JLabel jSpeedLabel = new JLabel();
    private JSpinner jSpeedSpinner = new JSpinner();
    private JLabel jScoreLabel = new JLabel();
    private JTextField jScoreTextField = new JTextField();
    private JLabel jNextGraphLabel = new JLabel();
    private TitledBorder titledBorder3;
    private JLabel jCopyRightLabel = new JLabel();
    private int intSpeed = 1; //速度等級

    TitledBorder titledBorder4;
    TitledBorder titledBorder5;
    TitledBorder titledBorder6;
    TitledBorder titledBorder7;
    TitledBorder titledBorder8;

    public MainFrame() {
        try {
            setTitle("俄羅斯方塊游戲");
            setLocation(200, 130);
            setSize(600, 400);
            jbInit();
            getContentPane().add(jMainPanel, "North");
            getContentPane().addKeyListener(new KeyAdapter() { //主窗口添加鍵盤監聽器
                public void keyPressed(KeyEvent e) {
                    ProcessKeyEvent(e);
                }
            });

            addWindowListener(new WindowAdapter() {
                public void windowClosing(WindowEvent e) {
                    dispose();
                }
            });

        }
        catch (Exception e) {
            e.printStackTrace();
        }
    }

    public static void main(String[] args) {
        MainFrame objMainFrame = new MainFrame();
        objMainFrame.pack();
        objMainFrame.setVisible(true);
        objMainFrame.validate();
        objMainFrame.setResizable(false);
    }

    private void jbInit() throws Exception {
        jMainPanel.setBackground(new Color(72, 112, 112));
        jMainPanel.setForeground(UIManager.getColor(
            "TextArea.selectionBackground"));
        jMainPanel.setLayout(xyLayout);

        gGameAreaTable = new GameTable(15, 26);
        gPreviewTable = new PreviewTable(5, 4);

        jGamePanel = new GameAreaPanel(gGameAreaTable);
        jNextGraphPanel = new PreviewPanel(gPreviewTable);

        jStartButton.setBackground(Color.pink);
        jStartButton.setFont(new java.awt.Font("Dialog", 0, 14));
        jStartButton.setForeground(SystemColor.desktop);
        jStartButton.setBorder(titledBorder1);
        jStartButton.setBorderPainted(true);
        jStartButton.setText("開始游戲");
        jStartButton.addActionListener(new MainFrame_jStartButton_actionAdapter(this));

        jRestartButton.setBackground(Color.pink);
        jRestartButton.setFont(new java.awt.Font("Dialog", 0, 14));
        jRestartButton.setForeground(SystemColor.desktop);
        jRestartButton.setBorder(titledBorder1);
        jRestartButton.setText("重新游戲");
        jRestartButton.addActionListener(new
                                         MainFrame_jRestartButton_actionAdapter(this));

        jExitButton.setBackground(Color.pink);
        jExitButton.setFont(new java.awt.Font("Dialog", 0, 14));
        jExitButton.setForeground(SystemColor.desktop);
        jExitButton.setBorder(titledBorder1);
        jExitButton.setText("退出游戲");
        jExitButton.addActionListener(new MainFrame_jExitButton_actionAdapter(this));
        jExitButton.addActionListener(new MainFrame_jExitButton_actionAdapter(this));

        jSpeedLabel.setFont(new java.awt.Font("SansSerif", 0, 14));
        jSpeedLabel.setForeground(Color.orange);
        jSpeedLabel.setBorder(titledBorder6);
        jSpeedLabel.setText("速度選擇");
        jSpeedSpinner.setValue(new Integer(1));
        jSpeedSpinner.addChangeListener(new SpeedChangeListener());

        jScoreLabel.setText("分數記錄");
        jScoreLabel.setForeground(Color.orange);
        jScoreLabel.setBorder(titledBorder6);
        jScoreLabel.setDebugGraphicsOptions(0);
        jScoreLabel.setFont(new java.awt.Font("SansSerif", 0, 14));
        jScoreTextField.setBackground(Color.pink);
        jScoreTextField.setBorder(null);
        jScoreTextField.setEditable(false);
        jScoreTextField.setText("0");
        jNextGraphLabel.setFont(new java.awt.Font("SansSerif", 0, 14));
        jNextGraphLabel.setForeground(Color.orange);
        jNextGraphLabel.setBorder(titledBorder6);
        jNextGraphLabel.setText("下一個圖形");

        jGamePanel.setBackground(new Color(0, 118, 125));
        jCopyRightLabel.setText("Savage制作,2003-2010 Copyright...");
        jCopyRightLabel.setForeground(Color.orange);
        jCopyRightLabel.setFont(new java.awt.Font("SansSerif", 0, 14));

        xyLayout.setWidth(407);
        xyLayout.setHeight(504);
        jSpeedSpinner.setBackground(SystemColor.desktop);
        jSpeedSpinner.setBorder(BorderFactory.createLoweredBevelBorder());
        jMainPanel.add(jGamePanel, new XYConstraints(20, 21, 257, 447));
        jMainPanel.add(jNextGraphLabel, new XYConstraints(299, 159, 78, 28));
        jMainPanel.add(jCopyRightLabel, new XYConstraints(62, 472, 246, 28));
        jMainPanel.add(jRestartButton, new XYConstraints(299, 367, 88, 30));
        jMainPanel.add(jStartButton, new XYConstraints(299, 311, 88, 30));
        jMainPanel.add(jNextGraphPanel, new XYConstraints(299, 183, 78, 88));
        jMainPanel.add(jScoreLabel, new XYConstraints(299, 79, 68, 28));
        jMainPanel.add(jSpeedLabel, new XYConstraints(299, 7, 78, 28));
        jMainPanel.add(jExitButton, new XYConstraints(299, 419, 88, 31));
        jMainPanel.add(jScoreTextField, new XYConstraints(299, 110, 68, 24));
        jMainPanel.add(jSpeedSpinner, new XYConstraints(300, 32, 69, 25));

        intGraph = ( ( (int) Math.round(Math.random() * 12345)) % 8) + 1; //產生隨機方塊
        switch (intGraph) { //初始化產生的方塊
            case 1:
                root = new One();
                break;
            case 2:
                root = new Two();
                break;
            case 3:
                root = new Three();
                break;
            case 4:
                root = new Four();
                break;
            case 5:
                root = new Five();
                break;
            case 6:
                root = new Six();
                break;
            case 7:
                root = new Seven();
                break;
            case 8:
                root = new Eight();
                break;
            default:
                break;
        }

        jNextGraphPanel.PreviewGraph(intGraph);
        root.begin(); //占據桌子,詳見root類
        intNextGraph = ( ( (int) Math.round(Math.random() * 12345)) % 8) + 1; //產生下一個提前顯示的方塊
        intGraph = intNextGraph;
        timer = new Timer(nTime, new MyRun()); //創建記時器,調用MyRun

        addKeyListener(new KeyAdapter() { //主窗口添加鍵盤監聽器
            public void keyPressed(KeyEvent e) {
                ProcessKeyEvent(e);
            }
        });
    }

    public class MyRun
        implements ActionListener { //記時器調用的監聽器
        public void actionPerformed(ActionEvent e) {
            if (!bCanMove)
                return;

            if (!root.down()) { //將方塊下落一格,如果不能再下降了,就調用下面語句
                DeleteLine(); //消行

                jNextGraphPanel.PreviewGraph(intGraph);
                switch (intGraph) { //產生新的方塊
                    case 1:
                        root = new One();
                        break;
                    case 2:
                        root = new Two();
                        break;
                    case 3:
                        root = new Three();
                        break;
                    case 4:
                        root = new Four();
                        break;
                    case 5:
                        root = new Five();
                        break;
                    case 6:
                        root = new Six();
                        break;
                    case 7:
                        root = new Seven();
                        break;
                    case 8:
                        root = new Eight();
                        break;
                    default:
                        break;
                }
                intNextGraph = ( ( (int) Math.round(Math.random() * 12345)) % 8) +
                    1;
                intGraph = intNextGraph;
                if (!root.begin()) { //如果失敗,游戲結束
                    jGamePanel.UpdateGraph(gGameAreaTable);
                    GameResetGamePara();
                }
                else
                    jGamePanel.UpdateGraph(gGameAreaTable);
            }
            else {

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
...av二区三区久久精品| 日韩和欧美的一区| 五月天国产精品| 精品在线你懂的| 欧美亚洲另类激情小说| 国产夜色精品一区二区av| 亚洲成人午夜电影| 99久久伊人网影院| www亚洲一区| 日本午夜精品视频在线观看 | 亚洲欧美区自拍先锋| 蜜桃久久久久久| 欧美色精品天天在线观看视频| 337p日本欧洲亚洲大胆精品| 亚洲国产精品久久久久婷婷884| 国产成人av资源| 精品国精品自拍自在线| 香蕉影视欧美成人| 色老汉一区二区三区| 国产精品福利一区二区三区| 久久超级碰视频| 日韩一区二区三区在线| 亚洲午夜久久久久久久久电影网| 不卡的av电影| 国产三级欧美三级| 国产一区二区三区久久悠悠色av | 一级中文字幕一区二区| bt欧美亚洲午夜电影天堂| 国产偷国产偷亚洲高清人白洁| 美女国产一区二区| 日韩一区二区电影| 蜜臀av一级做a爰片久久| 欧美电影影音先锋| 日韩不卡一区二区三区| 91精品福利在线一区二区三区 | 亚洲va韩国va欧美va| 欧美一a一片一级一片| 一区二区三区在线播放| 在线视频一区二区三区| 亚洲国产成人高清精品| 69p69国产精品| 久久国产福利国产秒拍| 久久久蜜桃精品| 国产91精品免费| 中文子幕无线码一区tr| 99久久久国产精品| 一卡二卡三卡日韩欧美| 8v天堂国产在线一区二区| 日韩精品一区第一页| 精品国产乱码久久久久久图片| 国产综合色精品一区二区三区| 国产视频在线观看一区二区三区| 国产成人aaa| 一区二区三区四区在线播放| 欧美日韩国产高清一区二区三区| 免费在线观看成人| 久久综合九色综合久久久精品综合 | 欧美在线观看一区二区| 亚洲成av人片一区二区梦乃| 欧美mv日韩mv| 波多野结衣在线一区| 艳妇臀荡乳欲伦亚洲一区| 欧美日韩成人综合在线一区二区 | 综合久久给合久久狠狠狠97色| 色哦色哦哦色天天综合| 日韩国产高清影视| 亚洲国产高清在线观看视频| 91福利国产精品| 久99久精品视频免费观看| 国产精品美女久久久久久久久久久 | 国产精品久久一卡二卡| 欧美在线观看一区| 国产成人在线看| 亚洲永久精品大片| 久久久激情视频| 欧美日韩午夜影院| 成人国产在线观看| 日韩激情视频网站| ...av二区三区久久精品| 日韩视频不卡中文| 日本道精品一区二区三区| 国产真实精品久久二三区| 一区二区三区在线视频免费| 国产色综合一区| 欧美日韩一区二区三区四区| 国产不卡免费视频| 麻豆精品在线看| 奇米亚洲午夜久久精品| 国产精品女主播在线观看| 日韩一区二区三区四区五区六区| 91色视频在线| 国产精品2024| 久久99在线观看| 亚洲一区二区三区小说| 国产精品每日更新在线播放网址| 欧美大片日本大片免费观看| 91久久精品国产91性色tv| 国产iv一区二区三区| 久久精品国产亚洲一区二区三区 | 久久午夜羞羞影院免费观看| 欧美区视频在线观看| 色婷婷久久久亚洲一区二区三区| 国产精品中文字幕一区二区三区| 免费在线看成人av| 日产精品久久久久久久性色| 亚洲国产精品自拍| 亚洲一区自拍偷拍| 一区二区在线观看视频| 亚洲欧美日韩国产综合在线 | 亚洲精品免费在线播放| 国产精品的网站| 国产日韩av一区| 国产婷婷一区二区| 久久精品一区蜜桃臀影院| 久久久久久久网| 久久久蜜臀国产一区二区| 久久午夜老司机| 久久久久9999亚洲精品| 国产日韩精品一区二区三区在线| 久久综合九色综合97婷婷 | 欧美国产禁国产网站cc| 国产婷婷一区二区| 国产精品人妖ts系列视频| 国产精品美女久久久久久久久| 欧美国产精品一区| 亚洲丝袜美腿综合| 亚洲自拍偷拍九九九| 亚洲国产美女搞黄色| 性感美女久久精品| 久久不见久久见中文字幕免费| 韩国av一区二区三区四区| 国产99久久久国产精品潘金网站| 国产一区在线精品| 国产91丝袜在线播放0| 91免费视频观看| 欧美色成人综合| 欧美tickling挠脚心丨vk| 国产日韩精品一区二区三区| 亚洲天堂av一区| 亚洲成人7777| 国模无码大尺度一区二区三区| 国产一区二区美女诱惑| 91网站最新网址| 91精品国产综合久久精品图片| 精品精品国产高清a毛片牛牛 | 久久你懂得1024| 亚洲天堂久久久久久久| 日韩精品色哟哟| 从欧美一区二区三区| 欧美日韩中字一区| www久久精品| 亚洲综合一区二区精品导航| 蜜臀久久99精品久久久久宅男| 国产91丝袜在线18| 欧美美女激情18p| 国产欧美一区二区精品性| 亚洲国产精品精华液网站| 国产一区二区三区四区五区入口| 91视频免费播放| 精品久久久久一区二区国产| 亚洲欧美国产毛片在线| 激情另类小说区图片区视频区| 91热门视频在线观看| 久久久五月婷婷| 日韩高清一区二区| 99久久免费精品| 精品999在线播放| 亚洲国产日韩一级| av在线播放成人| www一区二区| 日韩成人伦理电影在线观看| 99re在线视频这里只有精品| 精品国产精品网麻豆系列| 亚洲制服丝袜一区| 波多野结衣91| 国产视频在线观看一区二区三区| 丝袜国产日韩另类美女| 色综合久久久久久久久| 国产区在线观看成人精品| 另类人妖一区二区av| 欧美日韩三级一区| 国产精品无圣光一区二区| 国产呦萝稀缺另类资源| 日韩女优制服丝袜电影| 午夜精品视频在线观看| 91国偷自产一区二区使用方法| 国产日韩欧美a| 国产剧情在线观看一区二区| 91精品在线免费| 亚洲成av人**亚洲成av**| 色天使色偷偷av一区二区| 国产精品欧美一区二区三区| 国产一区二区三区在线观看精品 | av不卡一区二区三区| 久久综合色综合88| 麻豆极品一区二区三区| 欧美一区二区三区视频在线| 偷拍日韩校园综合在线| 制服丝袜国产精品| 水蜜桃久久夜色精品一区的特点|