Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi mouse down Kollision abfangen (https://www.delphipraxis.net/70378-mouse-down-kollision-abfangen.html)

pagan1900 29. Mai 2006 15:56


mouse down Kollision abfangen
 
Hi ich versuche mein lernprogramm intuitiver zu gestalten und
damit einige eingaben die der user sonst machen müste wegfallen

ich soll für den dijkstra ein lernprogramm erstellen
Ich möchte
1. das der Benutzer die knoten (ellipsen) selber auf einer (paintbox) einträgt
//hier hab ich aber das problem das ich das über einander malen von ellipsen abfangen muss
//sprich ich weis durch das mousedownereignis der paintbox die x,y koordinate der maus
//dann müste ich zum einen die koordinaten speichern und ihn eine ellipse an der stelle einzeichnen
//lassen. Beim nächsten mouse down müste ich dann alle gespeicherten knotenkoordinaten (in einem
//array)mit der x,y
//koordinate vergleichen {wenn bereich schon gesetzt dann male keinen kreis, wenn aber frei zeichne
//kreis} usw
2. resultiert eigentlich so denke ich aus problem(1) wie verhindere ich das ein benutzer die knoten
//zu nah an den rand zeichnen kann und somit nur halbe kreise eingezeichnet werden
Wenn (1) und (2) abgefangen
soll der benutzer (wenn es geht) die knoten anklicken und einen pfeil einzeichnen lassen
//sprich benutzer klickt knoten eins an und klickt einen zweiten knoten an und zwischen denen soll
//dann der pfeil eingezeichnet werden
// das soll er dann sollange können bis er seinen graphen erstellt hat
3. wenn Benutzer den graphen gezeichnet hat soll er einen der knoten auswählen und ihn per "anklicken"
als startknoten setzen


Ich weiss nicht wie man es realisieren kann, vielleicht hat jemand von euch eine idee, wenn ja bitte wenn möglich einen code oder so schreiben, damit ich es besser verstehen kann !
Wenn das klappt, kann ich damit die eingaben des users meines lernprogramms erheblich verringern

freue mich auf eure antwort!!

marabu 29. Mai 2006 18:36

Re: mouse down Kollision abfangen
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo.

Im Anhang findest du eine kleine Demo, welche dir erlaubt mit der Maus Kreise aufzuziehen, die sich nicht schneiden und die auch vollständig in der Clientarea gezeichnet werden. Durch Anklicken eines Kreises wird dieser wieder gelöscht. Darin sollten einige Anregungen für dich enthalten sein.

Freundliche Grüße vom marabu


Alle Zeitangaben in WEZ +1. Es ist jetzt 17:36 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz