Forum: GUI-Design mit VCL / FireMonkey / Common Controls
Delphi
by Hawkeye219,
25. Aug 2007
Hallo Tom,
die Anschlußpunkte für die Pfeile kannst du frei bestimmen, du mußt nur geeignete Bedingungen für die Auswahl der Parameter von DoDrawVector finden. In meinem Beispiel habe ich diese Parameter einfach in Abhängigkeit des Lagecodes gewählt. Du wirst wahrscheinlich weitere Informationen einfließen lassen, z.B. den x- oder y-Abstand der beteiligten Panels oder die Steigung des...
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
Delphi
by Hawkeye219,
21. Aug 2007
Hallo Tom,
Damit Pen.Style akzeptiert wird, muß offenbar Brush.Style den Wert bsClear haben. Wenn die Pfeilspitze gefüllt werden soll, muß natürlich Brush.sStyle wieder auf den Wert bsSolid gesetzt werden. Es wäre somit besser, alle Zugriffe auf den Canvas in die Zeichenroutine zu verlagern.
Möglich ist das, es stellt sich aber die Frage, ob der jetzige Weg dafür der richtige ist. Deine...
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
Delphi
by Hawkeye219,
20. Aug 2007
Hallo Tom,
die Position der beiden beteiligten Panels zueinander läßt sich recht einfach mit dem Sutherland-Cohen-Algorithmus ermitteln. In Abhängigkeit des ermittelten Lagecodes wird dann der Pfeil gezeichnet.
procedure TForm1.FormPaint (Sender: TObject);
procedure DoDrawVector (aPin1, aPin2: TPin);
var
P1, P2 : TPoint;
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
Delphi
by Hawkeye219,
15. Aug 2007
Hallo Tom,
ich habe hier eine kleine Demo zusammengebaut, die dir zeigen soll, wie du möglicherweise auf eine Pfeil-Komponente verzichten kannst. Zum Testen benötigst du lediglich ein leeres Formular, auf das du zwei Panels (Panel1 und Panel2) legst. Die Ereignisse OnMouseDown, OnMouseMove und OnMouseUp der Panels verbindest du über den Objektinspektor mit den zugehörigen Methoden des...