我把图片放入jpanel中,但不知如何才能在上面手工画任意大小矩形(不是固定大小的),大家能不能教下我,因为我实在是无从入手,希望大家能给个指导,一些提示也是十分感谢的了,谢谢了!

解决方案 »

  1.   

    你写一个类继承JPanel,然后重新写void paintComponent(Graphics g)方法,
    g.setColor(Color c); // 设置画矩形的颜色
    g.fillRect(int x, int y, int w, int h); // 画一个填充颜色的矩形,x、y是矩形的位置坐标,w、h是长和宽
      

  2.   

    楼上的可能误会了我的意思,我是想直接在图片上用鼠标画出那个矩形,这样做应该要用到mousedragged,mouserealeased等等用来监听的了
      

  3.   

    在mousePressed中记住起始点,然后在mouseReleased中记住结束点,然后计算出来width、height,这样不就可以画出来了,不知道楼主是不是这个意思。
      

  4.   

    恩,就是这个意思,我下午也写出来了
    但还有个问题,就是如何把画出来的矩形的信息传递出去,我用了一个rectangle的数组来放,但如果我重复画同一个区域的矩形的话,传递出去的长宽等就无法跟外面的值对应了。
    请问有什么好的办法吗?