Autor Beitrag
Green
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 283

Windows XP Home
Delphi 6 Enterprise
BeitragVerfasst: Fr 21.07.06 13:46 
bei folgender (noch unnötiger) Proc kriege ich in der markierten Zeile, schon beim ersten durchlauf, also X=0 und Y=0 eine AccesViolation:
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
procedure ExtractImage(const ReadImage: TImage; ExtractColor: TColor; var WriteCanvas: TCanvas);
  var
    x, y: integer;
begin
  for x := 0 to ReadImage.Width do begin
    for y := 0 to ReadImage.Height do begin
      WriteCanvas.Pixels[x, y] := ReadImage.Canvas.Pixels[x, y];
    end;
  end;
end;


Kann mir jemand sagen wo der Fehler ist???

€: Fehler gefunden, kann gelöscht werden.
Wens interessiert: Hab vergessen bei WriteCanvas (Jetzt WriteImage) die Höhe und Breite zu setzen --> AccesVilation.
digi_c
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 1905

W98, XP
D7 PE, Lazarus, WinAVR
BeitragVerfasst: Mo 24.07.06 13:20 
var WriteCanvas kommt mri auch ein wenig komisch vor.
Dadurch wäre es dir innerhalb der Prozedur möglich den übergebenen Canvas auf einen anderen umzuhängen/zu löschen,... , was bestimmt nicht beabsichtigt ist.
Bääääär
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 117



BeitragVerfasst: Mo 24.07.06 14:49 
ausblenden Delphi-Quelltext
1:
 WriteCanvas.Pixels[x, y] := ReadImage.Bitmap.Canvas.Pixels[x, y];					

Vielleicht so? Ansonsten wüsste ich nicht, was du falsch gemacht hast. Vielleicht liegt es am ReadImage oder am WriteCanvas.

€ Oh, hatte nicht gesehen, dass du den Fehler schon gefunden hast. Sorry!