Einzelnen Beitrag anzeigen

Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#6
  Alt 23. Mär 2003, 19:31
Irgendwo ist da noch einfehler drin. Es funktioniert nicht sehr zuverlässig und genau ist es auch nicht:
Delphi-Quellcode:
procedure TForm1.FormMouseUp(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
var
  pt: TPoint;
  dwRed, dwGreen, dwBlue : DWORD;
  dc : HDC;
begin
  dc := GetDC(0);
  pt.X := x+Form1.Left;
  pt.Y := y+Form1.Top;
  ClientToScreen(pt);
  dwRed := GetRValue(GetPixel(dc, pt.X, pt.Y));
  dwGreen := GetGValue(GetPixel(dc, pt.X, pt.Y));
  dwBlue := GetBValue(GetPixel(dc, pt.X, pt.Y));
  Caption := IntToStr(dwRed)+' '+IntToStr(dwGreen)+' '+IntToStr(dwBlue);
  ReleaseDC(Form1.Handle, dc);
  ReleaseCapture();
end;

procedure TForm1.FormMouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
  SetCapture(Form1.Handle);
end;

procedure TForm1.FormMouseMove(Sender: TObject; Shift: TShiftState; X,
  Y: Integer);
var
  pt : TPoint;
begin
  pt.X := x+Form1.Left;
  pt.Y := y+Form1.Top;
  ClientToScreen(pt);
  Caption := IntToStr(pt.X)+' / '+IntToStr(pt.Y);
end;
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat