java吧 关注:1,288,142贴子:12,814,502
  • 44回复贴,共1

求助 没事在上班的时候试试编写的五子棋 刚到开始就卡住了

只看楼主收藏回复

import javax.swing.*;
import java.awt.*;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
public class qipan extends JFrame//implements ActionListener
{
public static int x;
public static int y;
public static void main(String[] args)
{
JFrame ww = new JFrame();
JLabel lb1 = new JLabel("0:0");
ww.setSize(510,540);
ww.setVisible(true);
final qq e =new qq();
qq panel = null;
panel = new qq();
//int x,y;
ww.setLayout(new BorderLayout());
ww.add("Center",panel);
panel.setBackground(Color.gray);
panel.setLayout(null);
lb1.setBounds(300,470,40,50);
panel.add(lb1);
ww.addMouseListener(new MouseAdapter(){
public void mouseClicked(MouseEvent evt)
{
System.out.println("已捕获到鼠标事件");
x = (evt.getX()-10) / 30;
y = (evt.getY()-10) / 30;
System.out.println(x+" "+y);
e.qq(null, x,y);
}
});
ww.validate();
}
}
class qq extends JPanel
{//画棋盘
public void paint(Graphics g)
{
super.paint(g);
g.setColor(Color.blue);
g.drawLine(10,10,430,10);
g.drawLine(10,10,10,430);
g.drawLine(10,430,430,430);
g.drawLine(430,430,430,10);
for(int i = 40,j = 40;i<430&&j<430;i+=30,j+=30)
{
g.setColor(Color.black);
g.drawLine(10,j,430,j);
g.drawLine(i,10,i,430);
}
g.setColor(Color.BLUE);
g.setFont(new Font("仿宋",Font.BOLD,36));
g.drawString("五子棋(无禁手)", 70, 470);
g.setColor(Color.black);
g.setFont(new Font("仿宋",Font.BOLD,26));
g.drawString("比分(白 :黑):",70,500);
g.drawString("先",448,150);
g.drawString("手",448,180);
g.drawString("后",448,370);
g.drawString("手",448,400);
g.setColor(Color.white);
g.fillOval(440,60,40,40);
g.setColor(Color.black);
g.fillOval(440,300,40,40);
}
public void qq(Graphics g,int x,int y){
int i = 0;
i = i+1;
if(x!=0||y!=0)
{
System.out.println(x);
int m =3*x+20;
int n= 3*y+20;
g.fillOval(m,n,15,15);
}
}
}


1楼2013-12-20 09:07回复
    Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
    at qq.qq(qipan.java:81)
    at qipan$1.mouseClicked(qipan.java:32)
    at java.awt.Component.processMouseEvent(Unknown Source)
    7 9
    7
    at java.awt.Component.processEvent(Unknown Source)
    at java.awt.Container.processEvent(Unknown Source)
    at java.awt.Window.processEvent(Unknown Source)
    at java.awt.Component.dispatchEventImpl(Unknown Source)
    at java.awt.Container.dispatchEventImpl(Unknown Source)
    at java.awt.Window.dispatchEventImpl(Unknown Source)
    at java.awt.Component.dispatchEvent(Unknown Source)
    at java.awt.EventQueue.dispatchEvent(Unknown Source)
    at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
    at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
    at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
    at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
    at java.awt.EventDispatchThread.run(Unknown Source)


    2楼2013-12-20 09:08
    回复
      2025-11-20 15:18:31
      广告
      不感兴趣
      开通SVIP免广告
      新手 编写没大纲 就走一步写一步
      编译通过就是运行出问题啦


      3楼2013-12-20 09:09
      回复
        求高人 指点我拯救世界 拯救自己的脑细胞


        4楼2013-12-20 09:11
        回复
          以前想弄没弄成


          IP属地:广东来自Android客户端5楼2013-12-20 09:30
          收起回复
            没人吗 自己顶下


            6楼2013-12-20 09:57
            回复
              没事教小白我配下环境


              7楼2013-12-20 10:00
              收起回复
                没注释这么多代码懒得看--来自刚好十五字的土豪金客户端


                IP属地:上海来自Android客户端8楼2013-12-20 10:16
                收起回复
                  2025-11-20 15:12:31
                  广告
                  不感兴趣
                  开通SVIP免广告
                  空指针。。。debug一下就好。。。


                  9楼2013-12-20 10:41
                  回复
                    目测是这句吧:e.qq(null, x,y);


                    10楼2013-12-20 10:45
                    收起回复
                      你这句话:final qq e =new qq();得到的e就是null当null调用东西当然会报空指针,要么你在qq类里重写没参数的构造方法,初始化好e对象;要么把public void qq(Graphics g,int x,int y)方法改成static直接用类名调用,不构造实例。。。。。。。。。。


                      11楼2013-12-20 11:14
                      收起回复
                        算法自己写吗?


                        IP属地:辽宁12楼2013-12-20 11:25
                        收起回复
                          我想看你的ai思路…


                          IP属地:河南来自手机贴吧13楼2013-12-20 11:51
                          回复


                            IP属地:江苏来自手机贴吧14楼2013-12-20 11:54
                            回复
                              2025-11-20 15:06:31
                              广告
                              不感兴趣
                              开通SVIP免广告
                              好闲


                              15楼2013-12-20 12:13
                              收起回复