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

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

?? mainwindow.java

?? 一個用java編寫的網絡圍棋程序
?? JAVA
?? 第 1 頁 / 共 2 頁
字號:
import java.awt.*;//import javax.swing.*;import java.awt.event.*;import java.net.*;import java.io.*;public class MainWindow extends Frame implements Runnable{    Go panelGo=new Go();    Image myImage;    int PORT;    Socket sendSocket;//主動連接Socket    PrintWriter writer;//用來發送message    boolean stopFlag;    boolean isInitiative;    Point messagePoint;    Point goStartPoint=null;    Point yellowPoint=null;    boolean stepColor=true;    Point LastPoint=null;//移除黃點時,判斷位置變動    BorderLayout borderLayout1 = new BorderLayout();    Panel panel1 = new Panel();    Panel panel2 = new Panel();    BorderLayout borderLayout2 = new BorderLayout();    Panel panel3 = new Panel();    CheckboxGroup checkboxGroup1 = new CheckboxGroup();    Checkbox checkbox1 = new Checkbox();    Checkbox checkbox2 = new Checkbox();    Label label1 = new Label();    TextField textField1 = new TextField();    Button button1 = new Button();    Label label2 = new Label();    Choice choice1 = new Choice();    Button button2 = new Button();    GridLayout gridLayout1 = new GridLayout();    BorderLayout borderLayout3 = new BorderLayout();    public MainWindow()    {        try        {            jbInit();        }        catch(Exception e)        {            e.printStackTrace();        }    }    private void jbInit() throws Exception    {        choice1.setBackground(new Color(236, 190, 98));        button1.setBackground(new Color(236, 190, 98)); //       try //       { //          UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName()); //       }catch(Exception e){e.printStackTrace();}        this.setResizable(false);        new Thread(this).start();//啟動監聽線程        this.PORT=1976;        this.isInitiative=false;//是否主動連接        this.stopFlag=false;//是否繼續監聽的標志        this.choice1.addItem("黑");        this.choice1.addItem("白");        LastPoint=new Point();        messagePoint=new Point();        this.setSize(470,450);        this.setTitle("黑白分明 Beta1.0       作者:鄒宇凱");        this.panelGo.setEnabled(false);//開始之前屏蔽掉盤面        checkbox1.addMouseListener(new java.awt.event.MouseAdapter()        {            public void mouseClicked(MouseEvent e)            {                checkbox1_mouseClicked(e);            }        });        this.goStartPoint=this.panelGo.getLocation();//        this.setLayout(borderLayout1);        panel1.setLayout(borderLayout2);        checkbox1.setCheckboxGroup(checkboxGroup1);        checkbox1.setLabel("單機");        checkbox2.setCheckboxGroup(checkboxGroup1);        checkbox2.setLabel("聯機");        checkbox2.addMouseListener(new java.awt.event.MouseAdapter()        {            public void mouseClicked(MouseEvent e)            {                checkbox2_mouseClicked(e);            }        });        label1.setText("對方地址");        button1.setLabel("連接");        button1.addActionListener(new java.awt.event.ActionListener()        {            public void actionPerformed(ActionEvent e)            {                button1_actionPerformed(e);            }        });        label2.setText("  ");        button2.setBackground(new Color(236, 190, 98));        button2.setLabel("開始");        button2.addActionListener(new java.awt.event.ActionListener()        {            public void actionPerformed(ActionEvent e)            {                button2_actionPerformed(e);            }        });        panel3.setLayout(gridLayout1);        gridLayout1.setRows(8);        gridLayout1.setColumns(1);        gridLayout1.setHgap(100);        gridLayout1.setVgap(10);        panel2.setLayout(borderLayout3);        this.panel2.setSize(500,70);        panelGo.addMouseMotionListener(new java.awt.event.MouseMotionAdapter()        {            public void mouseMoved(MouseEvent e)            {                panelGo_mouseMoved(e);            }        });        panelGo.addMouseListener(new java.awt.event.MouseAdapter()        {            public void mouseClicked(MouseEvent e)            {                panelGo_mouseClicked(e);            }        });        this.addWindowListener(new java.awt.event.WindowAdapter()        {            public void windowClosing(WindowEvent e)            {                this_windowClosing(e);            }        });        panel3.setBackground(new Color(236, 190, 98));        panel3.add(checkbox1, null);        panel3.add(checkbox2, null);        panel3.add(label1, null);        panel3.add(textField1, null);        panel3.add(button1, null);        panel3.add(choice1, null);        panel3.add(button2, null);        panel3.add(label2, null);        this.panel1.add(this.panelGo,BorderLayout.CENTER);        this.panel1.add(panel3, BorderLayout.EAST);        this.add(panel2, BorderLayout.SOUTH);        this.add(panel1, BorderLayout.CENTER);        this.disableLink();//廢掉控件        //this.button2.setEnabled(false);//廢掉開始        this.checkboxGroup1.setSelectedCheckbox(this.checkbox1);        this.yellowPoint=new Point(1000,1000);//初始化一個世紀外的黃點	  this.centerWindow();        this.show();        myImage=this.createImage(16,16);//用來紀錄有黃點之前的圖像    }    void centerWindow()    {	  Dimension d=Toolkit.getDefaultToolkit().getScreenSize();	  int pX=(d.width-this.getWidth())/2;	  int pY=(d.height-this.getHeight())/2;	  this.setLocation(pX,pY);    }    public static void main(String args[])    {        MainWindow main=new MainWindow();    }    //監聽線程    public void run()    {        try        {            ServerSocket serverSocket=new ServerSocket(PORT);            Socket receiveSocket=null;            receiveSocket=serverSocket.accept();            if(this.isInitiative)//如果已在進行,則不接受連接                this.stopFlag=true;            this.checkboxGroup1.setSelectedCheckbox(this.checkbox2);//自動選擇聯機            this.button1.setEnabled(false);            this.choice1.setEnabled(true);            this.textField1.setEnabled(false);            this.checkbox1.setEnabled(false);            this.checkbox2.setEnabled(false);            this.writer=new PrintWriter(receiveSocket.getOutputStream(),true);            BufferedReader reader=new BufferedReader(new InputStreamReader(receiveSocket.getInputStream()));            String message;            while(!this.stopFlag)            {                this.panelGo.showError("接收連接成功");                message=reader.readLine();                this.doMessage(message);            }            reader.close();            receiveSocket.close();            serverSocket.close();        }catch(IOException ioe){this.panelGo.showError("意外中斷");}    }    //處理接收到的東東    void doMessage(String message)    {        if(message.startsWith("start"))//判斷開始        {            this.panelGo.showError("對方已開始");            if(message.equals("start_black"))                this.choice1.select("白");            else                this.choice1.select("黑");            if(this.choice1.getSelectedItem().equals("黑"))//只要你是黑的,就先走                this.panelGo.setEnabled(true);            this.paintMyColor();//表明顏色            this.disableLink();        }        else//下子的信息        {            int color=Integer.parseInt(message.substring(0,1));            this.messagePoint.x=Integer.parseInt(message.substring(1,3));            this.messagePoint.y=Integer.parseInt(message.substring(3,5));            this.panelGo.setEnabled(true);//解禁            this.panelGo.doStep(this.messagePoint,color);        }    }    //為鼠標定位    void panelGo_mouseMoved(MouseEvent e)    {        Point realPoint=e.getPoint();        Point mousePoint=this.panelGo.getMousePoint(realPoint,this.goStartPoint);        this.removeLastMousePoint(this.LastPoint,mousePoint);        //this.LastPoint=mousePoint;大錯誤,使對象公用了一個地址        this.LastPoint.x=mousePoint.x;        this.LastPoint.y=mousePoint.y;        if(this.isPlace(mousePoint))            this.showMousePoint(mousePoint);    }    //加黃點的范圍    boolean isPlace(Point p)    {        if(p.x>19||p.x<1||p.y<1||p.y>19)            return false;        int color;        One one;        one=(One)(this.panelGo.myHash.get(p));        color=one.color;        if(color!=0)            return false;        return true;    }    void panelGo_mouseClicked(MouseEvent e)    {        if(this.isSingle())        {            this.doSingle();        }        else        {            this.doMultiple();        }    }    //開始    void button2_actionPerformed(ActionEvent e)    {        if(e.getActionCommand().equals("開始"))        {            this.disableLink();            this.checkbox1.setEnabled(false);            this.checkbox2.setEnabled(false);            this.button2.setLabel("退出");            if(this.isSingle())                this.panelGo.setEnabled(true);            else//聯機版時            {                if(this.choice1.getSelectedItem().equals("黑"))                {                    this.writer.println("start_black");                }                else                    this.writer.println("start_white");            }            this.paintMyColor();//表明顏色        }        else if(e.getActionCommand().equals("退出"))        {            this.dispose();            System.exit(0);        }    }    //disable聯機時用的控件    void disableLink()    {        this.textField1.setBackground(new Color(236, 190, 98));        this.textField1.setEnabled(false);        this.choice1.setEnabled(false);        this.button1.setEnabled(false);    }    //enable聯機時的控件    void enableLink()

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲一区二区黄色| 国产91精品免费| 一区二区三区四区乱视频| 中文字幕成人网| 久久综合久久综合久久| 精品盗摄一区二区三区| 欧美一级二级在线观看| 日韩一区二区三区高清免费看看| 麻豆国产一区二区| 久久99精品国产麻豆不卡| 日本亚洲天堂网| 麻豆成人av在线| 麻豆传媒一区二区三区| 狠狠色狠狠色综合| 国产成人av自拍| 不卡的看片网站| 91在线你懂得| 欧美日韩亚洲高清一区二区| 欧美影片第一页| 5566中文字幕一区二区电影| 欧美一级欧美三级| 久久久久久久久久美女| 国产精品每日更新| 亚洲综合999| 久久激情五月激情| 成人av在线资源| 欧美日韩一区二区欧美激情| 欧美一区二区三区视频| 欧美经典三级视频一区二区三区| 国产精品入口麻豆九色| 一区二区三区欧美在线观看| 日韩vs国产vs欧美| 成人国产精品视频| 欧美午夜免费电影| 日韩精品一区在线观看| 国产精品三级av| 婷婷久久综合九色国产成人| 国产在线播放一区| 色婷婷综合久久久中文一区二区| 56国语精品自产拍在线观看| 中文字幕精品在线不卡| 亚洲一区二区三区中文字幕 | 91精品国产综合久久蜜臀 | 丁香六月综合激情| 欧美日韩日本视频| 久久精品人人爽人人爽| 亚洲国产精品一区二区www在线 | 国产大片一区二区| 欧美日韩高清一区二区不卡 | 亚洲天堂免费在线观看视频| 久草在线在线精品观看| 91女人视频在线观看| 欧美一级二级三级蜜桃| 一区二区免费在线播放| 国产福利电影一区二区三区| 6080午夜不卡| 亚洲综合小说图片| 国产精品18久久久久| 91精品国产综合久久福利软件| 中文字幕永久在线不卡| 国产一区二区三区视频在线播放| 欧美视频一区二区三区在线观看| 欧美激情一区二区三区在线| 麻豆视频观看网址久久| 欧美精品久久一区| 亚洲愉拍自拍另类高清精品| 成人久久久精品乱码一区二区三区 | 午夜婷婷国产麻豆精品| 成人黄色综合网站| 久久精子c满五个校花| 日本aⅴ亚洲精品中文乱码| 91电影在线观看| 亚洲丝袜自拍清纯另类| zzijzzij亚洲日本少妇熟睡| 久久欧美中文字幕| 国产精品一区免费视频| 日韩欧美国产一区二区三区| 日本不卡在线视频| 91精品国产乱| 久久99深爱久久99精品| 久久综合狠狠综合久久综合88 | 日韩欧美的一区二区| 婷婷久久综合九色综合伊人色| 欧美亚洲国产一区在线观看网站| 国产精品传媒入口麻豆| aaa国产一区| 亚洲欧美另类小说| 欧美色手机在线观看| 亚洲精品日韩一| 色狠狠一区二区| 亚洲午夜电影在线观看| 欧美亚日韩国产aⅴ精品中极品| 亚洲免费观看高清| 欧美日韩三级在线| 日韩成人精品在线观看| 欧美一级黄色录像| 国产一区二区在线影院| 中文字幕欧美区| 一本一本大道香蕉久在线精品| 一个色综合av| 日韩片之四级片| 国产91高潮流白浆在线麻豆| 中文字幕亚洲综合久久菠萝蜜| 日本大香伊一区二区三区| 亚洲成人www| 欧美精品一区在线观看| 国产凹凸在线观看一区二区| 一区二区中文字幕在线| 精品国产乱码久久久久久图片| 韩国三级在线一区| 最新成人av在线| 91精选在线观看| 国产激情精品久久久第一区二区 | 99久久伊人精品| 日本最新不卡在线| 国产精品午夜在线| 欧美特级限制片免费在线观看| 六月婷婷色综合| 亚洲色图第一区| 精品伦理精品一区| 一本久久综合亚洲鲁鲁五月天 | 精品一区二区三区视频| 亚洲日本va午夜在线影院| 欧美久久久久中文字幕| 成年人国产精品| 蜜桃久久av一区| 亚洲精品高清视频在线观看| 精品va天堂亚洲国产| 在线免费观看一区| 国产精品一二一区| 亚洲第一成人在线| 中文字幕一区三区| 精品国产一区二区三区不卡| 欧洲在线/亚洲| 不卡的看片网站| 国产精品一区不卡| 蜜臀av一区二区在线免费观看 | 欧美自拍丝袜亚洲| 成人高清在线视频| 国产福利一区二区三区视频| 麻豆91精品视频| 亚洲成人av一区二区三区| 亚洲欧美综合网| 国产欧美日韩视频在线观看| 日韩视频在线你懂得| 欧美日精品一区视频| 91精品1区2区| 91论坛在线播放| 成人黄色免费短视频| 国产馆精品极品| 国产精品性做久久久久久| 九色综合国产一区二区三区| 三级不卡在线观看| 亚洲国产va精品久久久不卡综合| 亚洲美女电影在线| 一区二区三区美女视频| 亚洲免费看黄网站| 亚洲三级理论片| 亚洲免费伊人电影| 亚洲影院理伦片| 亚洲成人av在线电影| 天使萌一区二区三区免费观看| 亚洲国产精品久久一线不卡| 夜夜精品浪潮av一区二区三区| 亚洲色图欧洲色图| 一个色综合网站| 视频一区视频二区中文| 免费不卡在线观看| 久久91精品国产91久久小草| 国产精品一区一区三区| 成人黄色大片在线观看| 亚洲成人一区二区| 日本系列欧美系列| 国内久久婷婷综合| 豆国产96在线|亚洲| 91首页免费视频| 欧美日韩一卡二卡| 精品日韩99亚洲| 国产精品视频免费| 亚洲国产成人精品视频| 日本少妇一区二区| 中文字幕日韩一区| 日本美女一区二区三区| 成人污视频在线观看| 亚洲第一久久影院| 激情五月播播久久久精品| 粗大黑人巨茎大战欧美成人| 欧美三级一区二区| 精品电影一区二区| 一区二区三区高清| 久久不见久久见免费视频7| 国产在线精品一区二区三区不卡 | 日韩高清在线观看| 国产一区视频导航| 色av成人天堂桃色av| 欧美va在线播放| 日韩美女视频一区二区| 麻豆精品蜜桃视频网站| 在线播放欧美女士性生活| 成人黄色在线视频|