Laden...

Zeichnen und Verschieben von Objekten - GraphicsPath-Klasse - Rechteck mit Text/Text mit Rahmen

Erstellt von c#rookie123 vor 10 Jahren Letzter Beitrag vor 10 Jahren 1.521 Views
C
c#rookie123 Themenstarter:in
4 Beiträge seit 2014
vor 10 Jahren
Zeichnen und Verschieben von Objekten - GraphicsPath-Klasse - Rechteck mit Text/Text mit Rahmen

Hallo zusammen,

in Anlehnung an das [Tutorial] Gezeichnete Objekte mit der Maus verschieben habe ich noch eine folgende Frage:
Ich zeichne auf einem Panel.
Objekte werden auf ein Bild gezogen, um die Koordinaten auf diesem zu bestimmen.
Dieses Bild ist als Objekt einer von der GraphicsPath-Klasse abgeleiteten Klasse ebenfalls auf dem Panel gezeichnet, kann aber nicht verschoben werden.
Die Objekte, die ich auf das Bild ziehen möchte, sind im Moment strings.
Meine Frage: Gibt es eine Möglichkeit, einen Rahmen um diesen Text zu ziehen bzw. ein Rechteck mit Text zu füllen?

Ich freue mich auf eure Tipps und vielen Dank im Voraus! 🙂

Gruß,
c#rookie123

49.485 Beiträge seit 2005
vor 10 Jahren

Hallo c#rookie123,

mir ist ehrlich sagt nicht klar, was dein Problem ist, nicht mal genau, was du machen willst.

Wenn du auf ein vorgegebenes (Hintergrund-)Bild Strings zeichnen willst, dann geht das mit DrawText/DrawString. Wenn du eine Rahmen darum haben willst, kannst du DrawRectangle benutzen. Wenn du den Text durch einen Klick innerhalb dieses Rectangles selektieren bzw. ziehen möchtest, dann musst du aus diesem Rectangle nur den GraphicsPath erzeugen, der in der Contains-Methode aus dem Tutorial verwendet wird.

herbivore

C
c#rookie123 Themenstarter:in
4 Beiträge seit 2014
vor 10 Jahren

Hallo herbivore,

Danke für deine schnelle Antwort!
Ich möchte ein Rechteck verschieben, das mit Text gefüllt ist.
Die GraphicsPath-Klasse bietet ja die Möglichkeit, Strings oder Rechtecke zu zeichnen. Ich benötige wie gesagt, eine Kombination aus beiden, die ich dann verschieben kann.

Gruß,
c#rookie123

49.485 Beiträge seit 2005
vor 10 Jahren

Hallo c#rookie123,

du kannst einem Path mehrere Objekte hinzufügen. Aber selbst wenn das hier nicht in Frage kommen sollte, kannst du ohne Weiteres eine eigene Klasse von GraphicsObject ableiten, die zwei Zeichenoperationen durchführt.

herbivore