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

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

?? mainframe.java~523~

?? 這是本科生的畢業設計
?? JAVA~523~
?? 第 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一区二区三区免费野_久草精品视频
xnxx国产精品| 99精品视频一区二区| 亚洲视频在线观看一区| 久久精品视频在线免费观看 | 国产农村妇女精品| 久久新电视剧免费观看| 欧美精品一区二区三区在线| 日韩欧美色电影| 精品免费日韩av| 国产三级三级三级精品8ⅰ区| 久久无码av三级| 国产色产综合产在线视频| 国产婷婷精品av在线| 国产精品国产三级国产aⅴ入口 | 中文字幕五月欧美| 亚洲欧美二区三区| 天堂精品中文字幕在线| 免费精品99久久国产综合精品| 日韩av中文字幕一区二区| 麻豆久久久久久久| 高清国产午夜精品久久久久久| 99精品久久只有精品| 欧美在线视频日韩| 555夜色666亚洲国产免| 精品久久久三级丝袜| 国产精品免费久久久久| 亚洲福利视频一区| 久久er99热精品一区二区| 国产一区二区三区在线观看免费视频| 国产盗摄视频一区二区三区| 91捆绑美女网站| 欧美一三区三区四区免费在线看| 久久久综合精品| 亚洲一级二级三级在线免费观看| 日本欧美一区二区三区乱码| 国产传媒一区在线| 欧美三级视频在线| 亚洲国产电影在线观看| 五月天欧美精品| av中文字幕不卡| 欧美一级片在线看| 亚洲激情六月丁香| 国产精品一区二区无线| 欧美日韩一区二区欧美激情| 国产香蕉久久精品综合网| 亚洲影院免费观看| 不卡一区中文字幕| 久久综合狠狠综合久久综合88| 亚洲情趣在线观看| 国产成人精品1024| 欧美在线free| 亚洲视频你懂的| 国产精品一区二区在线观看网站 | 国产精品一区不卡| 欧美一区二区在线不卡| 亚洲色图自拍偷拍美腿丝袜制服诱惑麻豆 | 午夜日韩在线观看| 国产精品一区二区x88av| 在线成人免费观看| 一区二区久久久久| 91原创在线视频| 中文字幕五月欧美| 99久久99久久免费精品蜜臀| 精品国产伦一区二区三区免费| 亚洲自拍偷拍网站| 91浏览器打开| 一二三四区精品视频| 91污在线观看| 亚洲同性同志一二三专区| 成人午夜电影小说| 国产丝袜在线精品| 国产黄色精品视频| 国产视频在线观看一区二区三区 | 欧美日韩国产综合一区二区| 亚洲伦理在线精品| 色欧美片视频在线观看在线视频| 国产精品久久久久一区二区三区共| 国产在线国偷精品产拍免费yy| 欧美mv和日韩mv的网站| 日本欧美在线看| 日韩亚洲欧美成人一区| 日本怡春院一区二区| 日韩一区二区三区免费观看| 免费观看在线色综合| 日韩欧美精品在线视频| 麻豆精品精品国产自在97香蕉 | 中文字幕不卡在线| 99久久精品国产毛片| 亚洲精品在线三区| 国产成人免费视频网站 | 亚洲精品久久久蜜桃| 欧美中文字幕一区| 天堂成人免费av电影一区| 欧美一区二区三区四区五区| 日韩成人精品在线| 久久久国产午夜精品| 不卡一卡二卡三乱码免费网站| 综合久久久久久久| 欧美三级电影网站| 久久电影网电视剧免费观看| 欧美国产视频在线| 欧美综合久久久| 久久99精品久久久久久国产越南 | 色八戒一区二区三区| 亚洲一二三专区| 久久网这里都是精品| 91亚洲精品久久久蜜桃网站| 天天影视涩香欲综合网| 久久蜜臀精品av| 欧美色爱综合网| 国产中文字幕精品| 亚洲综合激情网| 国产婷婷一区二区| 欧美日韩成人综合| 成人综合日日夜夜| 无码av免费一区二区三区试看| 久久婷婷成人综合色| 欧美视频三区在线播放| 国产主播一区二区| 三级欧美在线一区| 亚洲精品美腿丝袜| 久久久久国色av免费看影院| 欧美日韩一区在线| 成人免费视频视频| 久久国产日韩欧美精品| 亚洲精品国产一区二区精华液| 亚洲精品在线网站| 91精品一区二区三区久久久久久| 99久久精品国产精品久久| 国内精品自线一区二区三区视频| 亚洲一二三区不卡| 亚洲欧美综合在线精品| 久久蜜桃av一区二区天堂| 51精品国自产在线| 欧美性猛片aaaaaaa做受| 成人午夜私人影院| 国产精品资源站在线| 日本伊人午夜精品| 日本vs亚洲vs韩国一区三区二区 | 一区二区三区中文字幕| 国产精品久久久一本精品| 久久久久久夜精品精品免费| 欧美日韩免费观看一区二区三区| 99久久久久久99| 成人激情黄色小说| 国产91丝袜在线18| 国产一区二三区| 国内成人精品2018免费看| 琪琪久久久久日韩精品| 午夜久久电影网| 日韩激情在线观看| 日本va欧美va精品| 久久精品国产一区二区三 | 成人av在线播放网址| 国产传媒一区在线| kk眼镜猥琐国模调教系列一区二区| 黄页视频在线91| 高清国产一区二区三区| 99精品黄色片免费大全| 99久久精品免费精品国产| eeuss鲁一区二区三区| 波多野结衣中文一区| 99久久国产综合精品女不卡| 91免费国产在线观看| 在线观看日韩电影| 欧美巨大另类极品videosbest | 欧美日韩精品专区| 91精品婷婷国产综合久久竹菊| 欧美丰满少妇xxxbbb| 日韩欧美中文字幕一区| 精品美女一区二区| 国产日韩欧美激情| 亚洲日本在线看| 天使萌一区二区三区免费观看| 日韩av中文字幕一区二区| 国产成人亚洲综合色影视| 东方aⅴ免费观看久久av| 色综合天天在线| 3atv在线一区二区三区| 国产亚洲欧美日韩在线一区| 亚洲欧美视频在线观看视频| 视频一区二区三区入口| 国产精品夜夜嗨| 在线观看一区二区视频| 欧美一级免费观看| 国产精品乱人伦一区二区| 亚洲在线观看免费| 加勒比av一区二区| 色一情一乱一乱一91av| 日韩欧美久久久| 一区二区三区欧美日韩| 狠狠狠色丁香婷婷综合激情| a在线欧美一区| 日韩亚洲欧美高清| 一区二区欧美国产| 成人精品鲁一区一区二区| 制服.丝袜.亚洲.中文.综合| 国产精品三级视频| 久久99久久99精品免视看婷婷| 91麻豆精品视频|