Einzelnen Beitrag anzeigen

Bemi

Registriert seit: 17. Dez 2022
Ort: Eckental
13 Beiträge
 
Delphi 11 Alexandria
 
#5

AW: Anfängerfrage: Unterschiedliche Koordinaten von TForm und Canvas Objekt

  Alt 6. Jan 2024, 23:45
Hallo nochmal,

stellt euch einfach ein Blatt Papier vor, auf das so ziemlich genau in die Mitte ein Bild hin kommen soll. Ich lege also irgendwas als Beispiel auf das Blatt Papier und schiebe es so lange hin und her, bis es optisch passt. Dann nehme ich ein Lineal und lese die cm und mm ab... Sowas geht ja nicht am PC.


Damit ich meine Koordinaten für z.B. ein Canvas.Rectangular(x1, y1, x2, y2) bekomme,
hatte ich im Designer auf ein TForm, ein TShape auf die (für mich) passende Stelle gelegt und im Objektinspektor die Positionsdaten gelesen.

Diese hatte ich dann als Grundlage für die Position meines Canvas Objektes genommen. Das Shape wird nur für die Position genommen und kommt sofort wieder weg!


Nur lag dieses Canvas Objekt an einer ganz anderen Stelle als das Shape!

Mir geht es nur um die Frage, warum die Position beim Canvas Objekt ganz wo anders ist. Die Koordinaten passen nicht. In ein und derselben TForm!


Der Code im angehängten Bild ist etwa so:

Canvas.Brush.Color := clYellow;
Canvas.Brush.Style := bsSolid;

// Set the border color
Canvas.Pen.Color := clBlue;
Canvas.Pen.Width := 3;
Canvas.Pen.Style := psSolid;
x1 := 369; y1 := 170; x2 := 630; y2 := 431; // x2 := left + width, y2 := top + height (shape vom Objektinspektor)

R := Rect(x1, y1, x2, y2);
Canvas.Rectangle(R);


// 2 Linien durchkreuzen das Rechteck/Quadrat

Canvas.MoveTo(x1, y1);
Canvas.LineTo(x2, y2);

Canvas.MoveTo(x1, y2);
Canvas.LineTo(x2, y1);

Im Anhang simd zwei Screenshots: der erste zeigt, wie es wird, wenn ich die Koordinaten vom Platzhalter "Shape" nehme.
Im zweiten, wenn ich es selber herausfinde, und mich mühsam annähere. Genauso sollte es ja nicht sein! Nix RAD. Das ist wie KC Basic vor 35 Jahren.
Miniaturansicht angehängter Grafiken
das-gelbe-ist-das-rectangle.jpg   so-soll-es-werden.jpg  
Michael

Geändert von Bemi ( 7. Jan 2024 um 09:22 Uhr) Grund: unerklärlich
  Mit Zitat antworten Zitat