如何获取屏幕上当前最前面的一幅图像从左上角到右下角的每一个像素 RGB 的值?
是屏幕上的像素,不是表单上的像素.

解决方案 »

  1.   

    procedure TForm1.Button1Click(Sender: TObject);
    var
      dc: HDC;
      b: TBitmap;
    begin
      dc := GetDC(HWND_DESKTOP);
      try
        b := Image1.Picture.Bitmap;
        b.Width := Screen.Width;
        b.Height := Screen.Height;
        BitBlt(b.Canvas.Handle, 0, 0, Screen.Width, Screen.Height,
          dc, 0, 0, SRCCOPY);
      finally
        ReleaseDC(HWND_DESKTOP, dc);
      end;
    end;从TBitmap中怎么取像素就不用我说了吧