代码如下:
procedure TFrm_Main.Button1Click(Sender: TObject);
var
  Bitmap:TBitmap;
begin
  Bitmap := TBitmap.Create;
  Bitmap.LoadFromFile('D:\1.bmp');
  image1.Canvas.Draw(50,50,Bitmap);
  image1.Canvas.Draw(36,36,Bitmap);//在TImage上画个图,如何点击中该//图后把它删除??(不能把第一个也删除了)
end;
谢谢.

解决方案 »

  1.   

    将image1的50,50提取出来,然后清空,在将50,50绘制上去
      

  2.   

    有没有高手指点一下啊,因为我要在一个Image上放上很多的图片,我只要求删除某个图片
      

  3.   

    其实JVCL中有一个组件可以实现多图片预览。
    自己写也很简单:
    建一个二维数组记录图片的显示情况,比如有图片对应元素是1,无图片是0。
    鼠标点击TImage的时候,根据X,Y整除以小图片的宽度、高度就算出了它在数组中的位置。
    删除就是把数组对应元素清0,再把TImage中对应区域用某种单色(白或黑等)重画一下。
      

  4.   

    Canvas.Draw后其实已经将背景覆盖原理上是不能逆操作的
    你可以先把背景保存,逆操作就是将背景指定区域重绘来变相完成