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

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

?? creatwindow.java

?? wiziqi
?? JAVA
?? 第 1 頁 / 共 2 頁
字號:
package view;

import iniset.PropertySet;
import iniset.finals.SetDatas;

import java.awt.Color;
import java.awt.Component;
import java.awt.Dimension;
import java.awt.Font;
import java.awt.Point;
import java.awt.Toolkit;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.io.IOException;

import javax.swing.JDialog;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JMenuItem;
import javax.swing.JOptionPane;
import javax.swing.JPopupMenu;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;

import vo.ChessPoint;
import vo.CursorsAndImg;
import vo.Enums;
import vo.sounds.Music;
import vo.sounds.Sound;
import dao.Battel;
import dilog.SysDilog;

/**
 * 生成一個窗口,并處理其中的各種按鈕事件
 * 
 * @author B.Lee
 * 
 */
public class CreatWindow extends JFrame {
  private final JLabel head = new JLabel(CursorsAndImg.HEAD);

  private final JLabel boot = new JLabel(CursorsAndImg.BOOT);

  private final JLabel left = new JLabel(CursorsAndImg.LEFT);

  private final JLabel right = new JLabel(CursorsAndImg.RIGHT);

  private final JLabel toolbar = new JLabel(CursorsAndImg.TOOL_BAR);

  private final JLabel playerInf = new JLabel(CursorsAndImg.PLYER_INF);

  private final static JTextArea txtOne = new JTextArea();

  private final static JTextArea txtTwo = new JTextArea();

  private final Battel battel = new Battel(this);

  /** 存儲各種信息 */
  private PropertySet propertySet = PropertySet.getPropertySet();

  /** 設置對話框 */
  private SysDilog sysDilog = null;

  /** 加入滾動欄以便顯示全部數據 */
  private JScrollPane textPane = null;

  /** 用于播放背景音樂的類 */
  private Music music;
  
  /** 彈出菜單 */
  private JPopupMenu pop = null;
  
  /** 彈出菜單的子菜單 */
  private JMenuItem clear = null;

  /**
   * 構造函數
   * 
   * @param name
   *          窗口的名字
   */
  public CreatWindow(String name) {
    super(name);
    setResizable(false);
    setSize(1001, 737);
    setLayout(null);
    sysDilog = SysDilog.getSysDilog(this);
    // final SoundSet soundSet = new SoundSet();
    this.setIconImage(CursorsAndImg.FIVE.getImage());
    Dimension scrSize = Toolkit.getDefaultToolkit().getScreenSize();
    setLocation((scrSize.width - getSize().width) / 2,
        (scrSize.height - getSize().height) / 2);// 最佳位置

    music = new Music();

    head.setBounds(0, 0, 724, 85);
    boot.setBounds(0, 625, 724, 86);
    left.setBounds(0, 85, 92, 540);
    battel.setBounds(92, 85, 540, 540);
    right.setBounds(632, 85, 92, 540);
    toolbar.setBounds(726, 0, 268, 34);
    playerInf.setBounds(726, 35, 275, 133);

    txtOne.setBounds(726, 170, 268, 200);
    txtTwo.setBounds(726, 372, 268, 324);
    textPane = new JScrollPane(txtTwo);
    textPane.setBounds(726, 372, 268, 324);
    textPane
        .setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED);
    textPane
        .setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED);
    textPane.setWheelScrollingEnabled(true);// 響應鼠標滾輪

    txtOne.setBackground(new Color(76, 76, 76));
    txtOne.setFont(new Font("楷體", Font.BOLD, 12));
    txtOne.setForeground(Color.red);
    txtOne.setLineWrap(true); // 換 行
    txtOne.setEditable(false);// 不可編輯
    final String declare = new String("\n\t免責聲明\n\n      該游戲是對騰訊QQ游戲中五"
        + "子棋的一個模擬,其中所用到的圖片多數來自騰" + "訊QQ游戲中,圖片的所有權歸騰訊公司所有\n\n其余部分版權沒有,盜版不究");
    txtOne.setText(declare);

    txtTwo.setBackground(new Color(76, 76, 76));
    txtTwo.setFont(new Font("楷體", Font.BOLD, 12));
    txtTwo.setForeground(Color.white);
    txtTwo.setLineWrap(true); // 自 動 換 行
    txtTwo.setEditable(false);// 不可編輯

    add(head);
    add(boot);
    add(left);
    add(battel);
    add(right);
    add(toolbar);
    add(playerInf);
    add(txtOne);
    add(textPane);
    
    pop = new JPopupMenu();
    clear = new JMenuItem("清除");
    pop.add(clear);

    if (propertySet.getMusic() == SetDatas.MUSIC_ON) {
      music.play();
    }

    this.setVisible(true);

    if (propertySet.getModel() == SetDatas.PEOPLE_VS_COMPUTER
        && propertySet.getFirst() == SetDatas.WHITE_FIRST) {// 如果是人與電腦對戰且白棋先下則電腦下一個棋
      getBattel();
      getBattel().getchessPoint(new Point(15 / 2, 15 / 2)).setState(
          Enums.chessState.WHITE);// 電腦下棋
      getBattel().getchessPoint(new Point(15 / 2, 15 / 2)).setIcon(
          CursorsAndImg.WHITE_CHESS);
      // 加入路徑
      getBattel().path.offerLast(getBattel().getchPoint()[15 / 2][15 / 2]);
      addTxtTwo("電腦下棋:     坐標(7" + ",    7" +  ");\n");
    }
    
    clear.addActionListener(new ActionListener() {
      public void actionPerformed(ActionEvent e) {
        setTxtTwo("");
      }
      
    });
    
    /**
     * 右鍵彈出菜單的事件聆聽
     */
    txtTwo.addMouseListener(new MouseAdapter() {
      public void mousePressed(MouseEvent e) {
        if(e.getButton() == MouseEvent.BUTTON3) {
          System.out.println("彈出菜單");
          pop.show((Component) e.getSource(), e.getX(), e.getY());
        }
      }
    });
    
    this.addWindowListener(new WindowAdapter() {
      public void windowClosing(WindowEvent e) {
        JOptionPane.showMessageDialog(null, "謝謝使用!", "退出游戲",
            JOptionPane.WARNING_MESSAGE, CursorsAndImg.OUT);
        // soundSet.save();
        System.exit(0);
      }
    });

    /**
     * 內部類,下方按鈕的實現
     */
    boot.addMouseListener(new MouseAdapter() {
      public void mouseClicked(MouseEvent e) {
        int x = e.getX();
        int y = e.getY();
        if (x > 102 && x < 144 && y > 22 && y < 41) {// 按在了悔棋上
          if (propertySet.getRegret() == SetDatas.UN_REGRET_ABLE) {
            JOptionPane.showMessageDialog(null, "當前禁止悔棋,請更改設置");
            return;
          }

          if (getBattel().getEnd()) {// 游戲已經結束了悔棋不可用
            return;
          } else if (propertySet.getModel() == SetDatas.PEOPLE_VS_COMPUTER) {// 人機對戰模式悔棋
            ChessPoint pointOfPath = new ChessPoint(Enums.chessState.NONE,
                new Point(0, 0));
            if (getBattel().path.size() > 2) {// 表示可以悔棋
              pointOfPath = getBattel().path.pollLast();
              pointOfPath.setState(Enums.chessState.NONE);
              pointOfPath.setIcon(CursorsAndImg.NONE_CHESS);
              pointOfPath = getBattel().path.pollLast();
              pointOfPath.setState(Enums.chessState.NONE);
              pointOfPath.setIcon(CursorsAndImg.NONE_CHESS);
              addTxtTwo("玩家悔棋,清除棋盤上的兩顆棋..\n");
            } else {// 不可悔棋
              System.out.println("Run Here");
              JOptionPane.showMessageDialog(null, "非法悔棋方式!  請查看幫助", "出錯啦",
                  JOptionPane.WARNING_MESSAGE);
            }
          } else { // 人人對戰模式悔棋
            ChessPoint pointOfPath = new ChessPoint(Enums.chessState.NONE,
                new Point(0, 0));
            if (!getBattel().path.isEmpty()) {// 非空表示可以悔棋
              pointOfPath = getBattel().path.pollLast();

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
青青草伊人久久| 97se狠狠狠综合亚洲狠狠| 国产精品综合视频| 欧美偷拍一区二区| 国产午夜精品一区二区 | 久久精品网站免费观看| 一区二区三区四区乱视频| 久久99蜜桃精品| 欧美日韩中文字幕一区二区| 亚洲欧洲av一区二区三区久久| 麻豆一区二区三区| 欧美日韩黄色一区二区| 亚洲欧美日韩久久| 白白色 亚洲乱淫| 久久精品无码一区二区三区| 精品中文字幕一区二区| 欧美性视频一区二区三区| 国产精品灌醉下药二区| 国产成人精品免费视频网站| 精品国产91久久久久久久妲己| 婷婷综合另类小说色区| 欧美亚一区二区| 亚洲最新视频在线播放| 色综合一区二区| 亚洲免费观看高清完整| 99re热这里只有精品免费视频| 欧美激情艳妇裸体舞| 国产精品中文有码| 久久综合色之久久综合| 激情综合网av| 久久久久久久久蜜桃| 久久成人麻豆午夜电影| 久久综合色婷婷| 国产成a人无v码亚洲福利| 久久久久国色av免费看影院| 国产精品一区二区x88av| 久久久99免费| 成人免费视频一区| 自拍偷自拍亚洲精品播放| a级高清视频欧美日韩| 中文字幕视频一区| 91在线观看下载| 亚洲伊人色欲综合网| 欧美精品在线一区二区三区| 婷婷开心久久网| 日韩欧美在线网站| 国产精品一区二区久激情瑜伽 | 亚洲人成7777| 91电影在线观看| 亚洲综合清纯丝袜自拍| 欧美日韩国产小视频| 日韩av在线免费观看不卡| 精品成人一区二区三区| 东方欧美亚洲色图在线| 亚洲精品少妇30p| 91精品国产综合久久久久久 | 一区二区视频在线看| 欧美日韩一区小说| 日韩av网站免费在线| 久久色在线视频| 色婷婷av一区| 精品一二线国产| 国产精品视频看| 在线播放欧美女士性生活| 黄色成人免费在线| 自拍偷拍国产精品| 欧美一区日本一区韩国一区| 高清国产一区二区| 亚洲一区在线观看网站| 欧美mv和日韩mv国产网站| 成人久久18免费网站麻豆 | 欧美人狂配大交3d怪物一区| 久久精品国产网站| 亚洲青青青在线视频| 日韩三级中文字幕| 99久久久久免费精品国产| 日韩av中文字幕一区二区| 中文字幕视频一区| 精品人伦一区二区色婷婷| 91亚洲永久精品| 国产在线精品一区二区不卡了 | 国产成人丝袜美腿| 香蕉乱码成人久久天堂爱免费| 国产亚洲自拍一区| 91精品久久久久久久久99蜜臂| 99久久精品免费观看| 久久国内精品视频| 亚洲成人在线网站| 亚洲三级久久久| 国产视频一区在线播放| 欧美一区午夜精品| 在线视频欧美精品| 成人午夜免费av| 精品一二三四区| 麻豆成人在线观看| 偷拍日韩校园综合在线| 亚洲欧洲韩国日本视频| 久久久精品国产免大香伊| 在线播放/欧美激情| 欧美体内she精视频| 99国产精品久久| 成人美女在线视频| 精品一区二区av| 美女一区二区久久| 蜜臀av性久久久久蜜臀aⅴ | 国产成人综合在线| 麻豆精品一二三| 久久精品免费看| 青青草一区二区三区| 视频一区二区中文字幕| 午夜精品福利一区二区蜜股av| 亚洲欧美日韩一区| 一区二区三区蜜桃| 亚洲午夜精品久久久久久久久| 亚洲欧美日韩中文播放| 亚洲欧美日韩电影| 一区二区三区欧美日| 亚洲精品精品亚洲| 一区二区三区国产精品| 一区二区免费在线| 五月婷婷综合激情| 日韩综合在线视频| 美国三级日本三级久久99 | 欧美一区二区在线不卡| 在线成人免费视频| 日韩美女一区二区三区| 精品国产一区二区精华| 国产三级精品三级在线专区| 国产精品久久久久影院| 18欧美乱大交hd1984| 一区二区免费看| 日韩av二区在线播放| 国产在线视频一区二区三区| 国产99久久久国产精品免费看| 99久久99久久久精品齐齐| 91福利国产成人精品照片| 欧美一区二区三区小说| 久久精品一区二区三区不卡 | 久久久久久一二三区| 国产精品久久二区二区| 亚洲午夜一区二区| 国产一区免费电影| 99精品欧美一区二区蜜桃免费| 欧美色图免费看| 久久久99久久| 一区二区三国产精华液| 美女精品一区二区| 91在线视频播放| 91精品久久久久久蜜臀| 国产精品嫩草99a| 婷婷一区二区三区| 丁香桃色午夜亚洲一区二区三区| 欧美影院午夜播放| 久久精品一二三| 日精品一区二区| 91丨porny丨国产入口| 91麻豆精品91久久久久久清纯| 国产日产精品一区| 午夜精品福利一区二区蜜股av| 国产成人高清在线| 91精品福利在线一区二区三区| 国产精品盗摄一区二区三区| 麻豆免费精品视频| 欧洲一区在线观看| 国产日韩精品一区二区浪潮av| 亚洲国产aⅴ天堂久久| 国产不卡视频一区二区三区| 欧美精品久久99久久在免费线 | 久久97超碰色| 欧美日韩在线电影| 国产人成亚洲第一网站在线播放 | 美国十次综合导航| 欧洲一区二区三区免费视频| 日本一区二区视频在线| 奇米在线7777在线精品| 色综合激情五月| 国产精品免费观看视频| 麻豆精品蜜桃视频网站| 欧美日韩一二三| 一区二区在线电影| 99这里都是精品| 日本一区二区免费在线观看视频| 日本视频一区二区| 欧美另类高清zo欧美| 亚洲国产一区二区a毛片| 成人99免费视频| 国产精品天天摸av网| 国产精品自在欧美一区| 精品成人一区二区三区四区| 美国十次了思思久久精品导航| 欧美日韩一区二区三区免费看| 亚洲欧美激情视频在线观看一区二区三区| 久久99日本精品| 精品国产麻豆免费人成网站| 日本不卡一区二区| 制服丝袜av成人在线看| 午夜a成v人精品| 6080国产精品一区二区| 午夜精品久久久久久久| 欧美剧情片在线观看|