Thema: Delphi Fadenkreuz für TImage

Einzelnen Beitrag anzeigen

NetSonic

Registriert seit: 10. Mai 2007
124 Beiträge
 
Delphi 10 Seattle Professional
 
#3

Re: Fadenkreuz für TImage

  Alt 16. Mai 2007, 16:17
Danke für den Tipp, ich mache nun folgendes...

Delphi-Quellcode:
  imgLageplan.Picture.Bitmap.Canvas.Pen.Mode:= pmNotXor;
  imgLageplan.Picture.Bitmap.Canvas.MoveTo(oldX, 0);
  imgLageplan.Picture.Bitmap.Canvas.LineTo(oldX, imgLageplan.Height);
  imgLageplan.Picture.Bitmap.Canvas.MoveTo(0, oldY);
  imgLageplan.Picture.Bitmap.Canvas.LineTo(imgLageplan.Width, oldY);

  imgLageplan.Picture.Bitmap.Canvas.Pen.Mode:= pmXor;
  imgLageplan.Picture.Bitmap.Canvas.MoveTo(X, 0);
  imgLageplan.Picture.Bitmap.Canvas.LineTo(X, imgLageplan.Height);
  imgLageplan.Picture.Bitmap.Canvas.MoveTo(0, Y);
  imgLageplan.Picture.Bitmap.Canvas.LineTo(imgLageplan.Width, Y);

  oldX := X;
  oldY := Y;
dann löscht er allerding meine JPG-Grafik im TImage und zeigt mir auch kein Fadenkreuz.

Wenn ich es so mache...

Delphi-Quellcode:
  imgLageplan.Canvas.Pen.Mode:= pmNotXor;
  imgLageplan.Canvas.MoveTo(oldX, 0);
  imgLageplan.Canvas.LineTo(oldX, imgLageplan.Height);
  imgLageplan.Canvas.MoveTo(0, oldY);
  imgLageplan.Canvas.LineTo(imgLageplan.Width, oldY);

  imgLageplan.Canvas.Pen.Mode:= pmXor;
  imgLageplan.Canvas.MoveTo(X, 0);
  imgLageplan.Canvas.LineTo(X, imgLageplan.Height);
  imgLageplan.Canvas.MoveTo(0, Y);
  imgLageplan.Canvas.LineTo(imgLageplan.Width, Y);

  oldX := X;
  oldY := Y;
erwartet er allerding eine BMP-Datei anstelle des JPG's, sonst gibt es einen Compiler Fehler "Ein Bild kann nur geändert werden, wenn es ein Bitmap enthält." Wenn ich es dann mit einer BMP-Datei ausprobiere geht es. Allerdings muss ich bei JPG bleiben. Wie kann ich das Problem jetzt lösen?
  Mit Zitat antworten Zitat