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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? jmine.java

?? 用java實(shí)現(xiàn)的全真模擬windows下的掃雷程序。不過目前實(shí)現(xiàn)以button方式實(shí)現(xiàn)。改進(jìn)可以考慮以位圖形式實(shí)現(xiàn)
?? JAVA
?? 第 1 頁 / 共 2 頁
字號:
/*
 * JMine.java 1.0 2003-06-25
 *
 * Copyleft (c) 2003 RatKing.
 */

/*
<applet archive="JMine.jar" code="jmine.JMine.class" width="500" height="400">
</applet>
*/

package jmine;

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

/**
 * 掃雷游戲
 *
 * @author <a href="ratking@ynet.com">RatKing</a>
 * @version 1.0
 */
public class JMine extends JApplet {
    public static final Font defaultFont = new Font("Dialog", Font.PLAIN, 12);
    public static MineProps mineProps;

    /** 本程序以Java Application模式獨(dú)立運(yùn)行則為true,以Applet模式運(yùn)行則為false */
    public boolean isStandalone = false;
    public JMine instance = null;
    public JFrame frame = null;

    private JMenuBar menubar;
    private MinePanel minePanel;

    public int gameLevel;

    /** Construct the JMine applet */
    public JMine() {
        this(mineProps.gameLevel);
    }

    public JMine(int gameLevel) {
        this.gameLevel =gameLevel;
    }

    /** Initialize the applet */
    public void init() {
        instance = this;

        //Component initialization

        // 添加菜單欄
        JMenuBar menubar = createMenuBar();
        setJMenuBar(menubar);

        // 添加總面板
        minePanel = new MinePanel(this, gameLevel);
        minePanel.isMark  = mineProps.isMark;
        minePanel.isColor = mineProps.isColor;
        minePanel.isSound = mineProps.isSound;
        //getRootPane().setDefaultButton(minePanel.faceButton);
        getContentPane().add(minePanel, BorderLayout.CENTER);
    }

    /** Start the applet */
    public void start() {
        minePanel.resume();
        if (!isStandalone) {
            showStatus(getAppletInfo());
        }
    }

    /** Stop the applet */
    public void  stop() {
        minePanel.pause();
    }

    /** Destroy the applet */
    public void  destroy() {
    }

    /** Get a parameter value */
    public String getParameter(String key, String def) {
        return isStandalone ? System.getProperty(key, def) :
            (getParameter(key) != null ? getParameter(key) : def);
    }

    /** Get Applet information */
    public String getAppletInfo() {
        return "JMine v1.0 by RatKing 2003.06.25";
    }

    /** Get parameter info */
    public String[][] getParameterInfo() {
        return null;
    }

    /**
     * 創(chuàng)建菜單欄
     * @return 創(chuàng)建的菜單欄
     */
    public JMenuBar createMenuBar() {
        // 定義菜單欄
        JMenuBar menuBar = new JMenuBar();

        // 定義主菜單
        JMenu mFile = new JMenu("游戲(G)");
        JMenu mHelp = new JMenu("幫助(H)");

        // 定義菜單項(xiàng)
        JMenuItem            miNew        = new JMenuItem("開局(N)");
        JRadioButtonMenuItem miLowRank    = new JRadioButtonMenuItem("初級(B)", true);
        JRadioButtonMenuItem miMiddleRank = new JRadioButtonMenuItem("中級(I)");
        JRadioButtonMenuItem miHighRank   = new JRadioButtonMenuItem("高級(E)");
        JRadioButtonMenuItem miCustomRank = new JRadioButtonMenuItem("自定義(C)...");
        JCheckBoxMenuItem    miMark       = new JCheckBoxMenuItem("標(biāo)記(?)(M)", true);
        JCheckBoxMenuItem    miColor      = new JCheckBoxMenuItem("顏色(L)", true);
        JCheckBoxMenuItem    miSound      = new JCheckBoxMenuItem("聲音(S)", true);
        JMenuItem            miTopList    = new JMenuItem("掃雷英雄榜(T)...");
        JMenuItem            miExit       = new JMenuItem("退出(X)");

        JMenuItem miContent = new JMenuItem("目錄(C)");
        JMenuItem miSearch  = new JMenuItem("查找?guī)椭黝}(S)...");
        JMenuItem miShowHelp= new JMenuItem("使用幫助(H)");
        JMenuItem miAbout   = new JMenuItem("關(guān)于掃雷(A)...");

        miLowRank.setSelected(mineProps.gameLevel == MinePanel.LOW_LEVEL);
        miMiddleRank.setSelected(mineProps.gameLevel == MinePanel.MIDDLE_LEVEL);
        miHighRank.setSelected(mineProps.gameLevel == MinePanel.HIGH_LEVEL);
        miCustomRank.setSelected(mineProps.gameLevel == MinePanel.CUSTOM_LEVEL);  // 永遠(yuǎn)不可能發(fā)生
        miMark.setSelected(mineProps.isMark);
        miColor.setSelected(mineProps.isColor);
        miSound.setSelected(mineProps.isSound);

        // 指定助記鍵、快捷鍵
        mFile.setMnemonic(KeyEvent.VK_G);
        mHelp.setMnemonic(KeyEvent.VK_H);

        miNew.setMnemonic(KeyEvent.VK_N);
        miNew.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_F2, 0));
        miLowRank.setMnemonic(KeyEvent.VK_B);
        miMiddleRank.setMnemonic(KeyEvent.VK_I);
        miHighRank.setMnemonic(KeyEvent.VK_E);
        miCustomRank.setMnemonic(KeyEvent.VK_C);
        miMark.setMnemonic(KeyEvent.VK_M);
        miColor.setMnemonic(KeyEvent.VK_L);
        miSound.setMnemonic(KeyEvent.VK_S);
        miTopList.setMnemonic(KeyEvent.VK_T);
        miExit.setMnemonic(KeyEvent.VK_X);

        miContent.setMnemonic(KeyEvent.VK_C);
        miContent.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_F1, 0));
        miSearch.setMnemonic(KeyEvent.VK_S);
        miShowHelp.setMnemonic(KeyEvent.VK_H);
        miAbout.setMnemonic(KeyEvent.VK_A);

        // 將4個(gè)游戲級別單選菜單歸為一組
        ButtonGroup buttonGroup = new ButtonGroup();
        buttonGroup.add(miLowRank);
        buttonGroup.add(miMiddleRank);
        buttonGroup.add(miHighRank);
        buttonGroup.add(miCustomRank);

        // 設(shè)置菜單項(xiàng)對應(yīng)的功能
        miNew.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent e) {
                minePanel.replay();
                if (!isStandalone) {
                    setSize(getPreferredSize());
                    validate();
                }
                else if (frame != null) {
                    frame.pack();
                }
            }
        });
        miLowRank.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent e) {
                minePanel.setGameLevel(MinePanel.LOW_LEVEL);
                mineProps.gameLevel = MinePanel.LOW_LEVEL;
                if (isStandalone) {
                    if (frame != null) {
                        //frame.pack();
                        Utils.packPlaceShow(frame);
                    }
                }
                else {
                    setSize(getPreferredSize());
                    validate();
                }
            }
        });
        miMiddleRank.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent e) {
                minePanel.setGameLevel(MinePanel.MIDDLE_LEVEL);
                mineProps.gameLevel = MinePanel.MIDDLE_LEVEL;
                if (isStandalone) {
                    if (frame != null) {
                        //frame.pack();
                        Utils.packPlaceShow(frame);
                    }
                }
                else {
                    setSize(getPreferredSize());
                    validate();
                }
            }
        });
        miHighRank.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent e) {
                minePanel.setGameLevel(MinePanel.HIGH_LEVEL);
                mineProps.gameLevel = MinePanel.HIGH_LEVEL;
                if (isStandalone) {
                    if (frame != null) {
                        //frame.pack();
                        Utils.packPlaceShow(frame);
                    }
                }
                else {
                    setSize(getPreferredSize());
                    validate();
                }
            }
        });
        miCustomRank.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent e) {
                int rows = minePanel.getMineRows();
                int columns = minePanel.getMineColumns();
                int mines = minePanel.getTotalMines();

                CustomDialog dlg = new CustomDialog(frame);
                dlg.setRows(rows);
                dlg.setColumns(columns);
                dlg.setMines(mines);

                //dlg.show();
                Utils.packCenterShow(frame, dlg);

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
最新国产精品久久精品| 尤物av一区二区| 一区二区中文字幕在线| 亚洲免费在线观看视频| 国产精品久久久久久久久动漫| 亚洲精品高清视频在线观看| 天天影视网天天综合色在线播放| 另类人妖一区二区av| 99国产精品久久久久久久久久久 | 国产一区二区三区视频在线播放| 国产**成人网毛片九色 | 一区二区视频在线| 久久66热re国产| 一本到高清视频免费精品| 91精品国产色综合久久久蜜香臀| 亚洲精品在线观| 一区二区三区精品视频| 日韩精品电影在线观看| 风间由美中文字幕在线看视频国产欧美 | 欧美日韩色综合| 精品国产一区久久| 午夜亚洲国产au精品一区二区| 国产精品白丝jk黑袜喷水| 精品视频1区2区3区| 日韩欧美自拍偷拍| 亚洲一区二区三区在线看| 国产黄人亚洲片| 91精品国产入口| 亚洲日本韩国一区| 粉嫩绯色av一区二区在线观看| 在线成人小视频| 亚洲一区二区三区在线看| 国产精品18久久久久久久久久久久 | 在线观看一区日韩| 久久久国产精品午夜一区ai换脸| 亚洲成人福利片| 北岛玲一区二区三区四区| 日韩午夜在线观看| 性欧美大战久久久久久久久| 91小视频在线观看| 中文字幕中文字幕在线一区| 国产精品18久久久久久vr| 欧美电视剧在线观看完整版| 午夜精品福利一区二区三区av| 99re这里只有精品视频首页| 久久色中文字幕| 亚洲18女电影在线观看| 欧美丝袜自拍制服另类| 有码一区二区三区| 欧美亚洲免费在线一区| 亚洲蜜臀av乱码久久精品蜜桃| jlzzjlzz国产精品久久| 国产精品不卡视频| av动漫一区二区| 中文字幕中文乱码欧美一区二区 | av中文字幕一区| 欧美国产日韩一二三区| 成人自拍视频在线| 欧美va亚洲va国产综合| 亚洲天堂2016| 色偷偷88欧美精品久久久| 一区二区三区丝袜| 9191成人精品久久| 美女网站在线免费欧美精品| 精品国产乱码久久久久久免费| 国内精品免费在线观看| 国产欧美日韩精品一区| 免费久久99精品国产| 欧美精品久久一区二区三区| 亚洲激情图片小说视频| 精品视频在线免费| 欧美午夜电影网| 久久久噜噜噜久噜久久综合| 成人a区在线观看| 一区二区三区小说| 欧美特级限制片免费在线观看| 日本三级韩国三级欧美三级| 欧美videofree性高清杂交| 粉嫩aⅴ一区二区三区四区| 欧美一区二区视频免费观看| 韩国成人在线视频| 欧美经典一区二区三区| 国产不卡视频在线观看| 亚洲欧美日韩系列| 日韩欧美一级片| 国产白丝网站精品污在线入口| 中文字幕一区二区三区视频| 欧美三级三级三级| 国产裸体歌舞团一区二区| 亚洲欧美日韩久久| 日韩亚洲国产中文字幕欧美| 国内精品伊人久久久久av一坑| 中文字幕亚洲视频| 91精品国产91热久久久做人人 | 国产日产精品一区| 一本大道久久a久久精品综合| 亚洲观看高清完整版在线观看| 日韩欧美色综合网站| 97精品视频在线观看自产线路二| 日韩精品欧美精品| 亚洲美女少妇撒尿| ww亚洲ww在线观看国产| 91久久线看在观草草青青| 污片在线观看一区二区| 中文一区二区完整视频在线观看| 欧美日本精品一区二区三区| 成人美女视频在线观看18| 日本不卡高清视频| 亚洲桃色在线一区| 欧美大片国产精品| 91国产福利在线| 大尺度一区二区| 精品亚洲aⅴ乱码一区二区三区| 一区二区免费看| 国产精品久久久久久久浪潮网站 | 久久亚洲一区二区三区四区| 欧美日韩视频在线第一区 | 国产日本欧美一区二区| 精品婷婷伊人一区三区三| 91网站最新网址| 大桥未久av一区二区三区中文| 日本不卡高清视频| 偷拍亚洲欧洲综合| 伊人夜夜躁av伊人久久| 国产精品久久久久久久裸模| 久久久久99精品一区| 日韩精品一区在线| 日韩午夜激情av| 99国产精品国产精品毛片| 国产精品一区二区91| 91精品福利在线一区二区三区| 日本不卡一区二区| 日韩经典中文字幕一区| 午夜精品久久久久久久久久久| 亚洲午夜电影在线| 日韩高清中文字幕一区| 偷偷要91色婷婷| 麻豆一区二区三| 国产精品香蕉一区二区三区| 99在线精品观看| 欧美日韩成人高清| 欧美电视剧免费全集观看| 精品福利av导航| 国产精品系列在线| 一区二区激情小说| 蜜臀av在线播放一区二区三区| 韩国一区二区在线观看| 一道本成人在线| 欧美伦理影视网| 欧美国产精品一区二区| 亚洲欧美二区三区| 免费观看在线综合色| 国产精品资源在线观看| 91丨九色porny丨蝌蚪| 欧美嫩在线观看| 欧美极品另类videosde| 伊人夜夜躁av伊人久久| 麻豆91精品91久久久的内涵| 国产精品12区| 欧美色窝79yyyycom| 精品日韩一区二区三区| 中文字幕亚洲成人| 免费欧美在线视频| 色综合天天性综合| 日韩女优视频免费观看| 一区在线观看视频| 韩国三级在线一区| 欧美日产国产精品| 中文字幕一区二区三区av| 精品在线观看视频| 欧美日韩五月天| 亚洲人成影院在线观看| 国产自产2019最新不卡| 欧美精品精品一区| 亚洲色图另类专区| 高清成人在线观看| 精品国精品自拍自在线| 亚洲最大色网站| 91麻豆免费在线观看| 国产亚洲午夜高清国产拍精品 | 国产中文字幕精品| 日本精品一级二级| 国产精品福利一区二区三区| 九九视频精品免费| 欧美一级日韩不卡播放免费| 亚洲一区二区偷拍精品| 色综合婷婷久久| 欧美激情综合五月色丁香| 免费精品99久久国产综合精品| 不卡的av在线| 欧美极品少妇xxxxⅹ高跟鞋| 国产美女av一区二区三区| 7777精品伊人久久久大香线蕉 | 久久天天做天天爱综合色| 免费在线看成人av| 欧美一区二区三区婷婷月色 | 亚洲欧洲日产国产综合网| 国产高清视频一区| 欧美韩国日本一区| 成人午夜碰碰视频|