Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Array of TShape (https://www.delphipraxis.net/25570-array-tshape.html)

ennio_morricone 8. Jul 2004 18:30


Array of TShape
 
Ich habe ein paar (109) schon vorhandene TShapes zur Laufzeit zu einem statischen array zusammengefasst.
Nun suche ich eine Möglichkeit, dass, wenn man auf eines der TShapes klickt, den dem TShape zugehörigen Index übergeben bekommt.

Die Indexnummern sollen so bestehen bleiben, wie sie sind. Wenn man auf eins der TShapes klickt, soll in einer Datenbank nach der Indexnummer gesucht und der richtige Datensatz angezeigt werden (den Teil mit der Datenbank bekomme ich noch selbst hin).

Weiß evtl. jemand, wie das geht?

Dani 8. Jul 2004 18:55

Re: Array of TShape
 
Bei nem statischen Array könntest du die Tag-Property der TShapes auf den eigenen Index setzen.

Gruß,
Dani

ennio_morricone 8. Jul 2004 19:37

Re: Array of TShape
 
Das mit der Tag-Property nützt mir nichts. Ich möchte nicht für jedes TShape eine Click- oder MouseUp-Prozedur, sondern nur für das Array, wenn das möglich ist, d.h., eine MouseUp-Prozedur für das gesamte Array, bei der der []-Ausdruck innerhalb der Prozedur verfügbar ist.

Sanchez 8. Jul 2004 19:50

Re: Array of TShape
 
Der Tag bringt dir da schon was.
Du weist einfach jedem Shape die selben Event-Handler zu. Bei jedem Event kommt der Sender mit.
Über den Sender holst du dir den Tag, und die weißt somit wieder, welches Shape Auslöser war.

grüße, daniel

Nikolas 8. Jul 2004 19:50

Re: Array of TShape
 
Mach dir eine function die du beim (dynamischen) Erstellen der Shapes ins Mouseup schreibst. In der function kannst du dann einfach per
Delphi-Quellcode:
xy:=(Sender as TShape).tag);
den Tag auslesen. Wie du mit dem auf die Stellung im array kommst, sollte kein Problem darstellen. So brauchst du nicht für jede Shape eine Function tippen.


Alle Zeitangaben in WEZ +1. Es ist jetzt 12:29 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