Form1上有两个Image:Image1和Image2(Image1和Image2大小相同),点击Image2时要求得到Image1的颜色(或RGB值)。
当Image1和Image2位置不重叠且Image1的属性Visible为Ture时我可以得到Image1的颜色(或RGB值)。
现在的情况是这样的:我只想看到Image2,即Image1放在Image2的下面(Image1和Image2完全重叠)或Image1的属性Visible为False时我就得不到Image1的颜色(或RGB值)。请教高手:此时如何得到Image1的颜色(或RGB值)(我是菜鸟最好能有代码)?!若分数不够可以再加。多谢!!

解决方案 »

  1.   

    function GetRGBInPoint(aCanvas:TCanvas;const X,Y:integer):TColor;
    begin
     result:=aCanvas.Pixel[X,Y];
    end;
    TForm1.Image2OnMosueDown();
    var
    t:TColor;
    begin
     t:=GetRGBInPoint(imgae1.canvas.X,Y);
    end;
      

  2.   

    Image2OnMosueDown();就是Image2的MouseDown事件..我简写.......
      

  3.   

    aCanvas.Pixel[X,Y];??
    呵呵。.我有点疑问..Pixel[]方法是TCanvas的还是TBitmap的来着?你自己看一下.