1.如何判断鼠标点击的坐标?
2.那控制坐标的改变是用TIMER么?

解决方案 »

  1.   

    1:<img type="button"....>
    2:通过修改图片坐标的位置来完成,设置每个时间间隔
    网上找一下吧,很多的,
      

  2.   

    1.如何判断鼠标点击的坐标?
    实现MouseListener,然后注册到这个listener,点击的时候就可以捕捉了,看看事件处理方面的书2.那控制坐标的改变是用TIMER么?
    可以,用线程也行
      

  3.   

    问题一(有点复杂但绝对好用):
       1.从JPanel继承一个自定义类;
       2.在paintComponent()方法中绘图片;
       3.使用是直按用addActionListener就行。问题二:
       1.从JPanel继承一个自定义类,并实现Runnable接口;
       2.声明两个int变量用来指定绘图位置;
       3.在类中开一个线程,按一定的时间间隔不段改变两占int变量的值;
       4.重写paintComponent(),在其中绘制图片。
      

  4.   

    第一个问题解决了,但是第二个还有问题.
    我写了这样的内隐类
    private class doorMove implements Runnable{
         public void run()
         {
         while(((lx!=-90)||(rx!=180))&&(open==true))
         {
         System.out.print("1");
         try
         {
         Thread.sleep(100);
         }
         catch(InterruptedException e)
         {
    }
    lx-=2;rx+=2;
    Elev_LRdoor.remove(Elev_Ldoor);
    repaint();
    Elev_LRdoor.remove(Elev_Rdoor);
    repaint();
    Elev_Ldoor_Icon=new ImageIcon("ImageBG/elev_ldoor.jpg");
              Elev_Ldoor=new JLabel(Elev_Ldoor_Icon);
          Elev_Ldoor.setBounds(lx,0,90,280);
               Elev_LRdoor.add(Elev_Ldoor);
               repaint();
               Elev_Rdoor_Icon=new ImageIcon("ImageBG/elev_rdoor.jpg");
             Elev_Rdoor=new JLabel(Elev_Rdoor_Icon);
                Elev_Rdoor.setBounds(rx,0,90,280);
                Elev_LRdoor.add(Elev_Rdoor);
                repaint();
    }
    }
         }
    想通过重画JLabel来实现图片的移动,但是问题来了,我创建doorMove doormove=new doorMove();然后
    doormove.run()后,我本来希望他移动的JLabel并不移动,而是这个程序都停止运行,一直到这个函数完成后两个JLabel的位置突然从起始变到了终点,然后程序又开始运行,似乎移动没有实现,另外多线程也没有实现,麻烦大家出出主意,找找错,万谢了