![]() |
OnClick bei zur Laufzeit erstellten Objekten
Hallo,
ich habe ein Programm in dem zur Laufzeit unbegrenzt viele Objekte erstellt werden können. Das Ganze ist eine Art MapEditor für ein Spiel. Wenn man sich jetzt aber "verklickt" und das Objekt falsch setzt, muss man sich bisher die zugeordnete Nummer merken, die vom Programm vergeben wird und im Quelltext der Map das Objekt mit der Nummer manuell löschen. Anschließend muss die Map wieder neu in den Mapeditor geladen werden. Jetzt meine Frage, wie schaffe ich es, dass jedem erstellten Objekt ein Onclick-Ereignis zuzuweisen. Dieses OnClick-Ereignis soll dann das Objekt löschen und es aus der Liste mit den erstellten Objekten löschen (Das ist soweit kein Problem). Nur wie bekomme ich ein individuelles OnClick Ereignis hin? Liebe Grüße! |
Re: OnClick bei zur Laufzeit erstellten Objekten
|
Re: OnClick bei zur Laufzeit erstellten Objekten
Also ich habe schon mehrfach hier gesucht, hab das nur nicht richtig verstanden.
Wenn ich das Objekt nun auf der Form aufziehe, soll onMouseUp dem Objekt eine Prozedur zugewiesen werden. Die soll dann ungefähr so aussehen:
Delphi-Quellcode:
var i:integer;
begin i:=0; Sender.destroy //oder .free??? while SL[i]<>Sender.name do begin i:=i+4; end; //Alle Einträge zum Objekt aus der Liste löschen end; Was muss ich denn jetzt genau bei MouseUp eintragen. Benennung der Shapes: TypA_{Zufallsstring aus 5 Buchstaben}_{fortlaufende Nummer} TypB_{Zufallsstring aus 5 Buchstaben}_{fortlaufende Nummer} In der Liste SL ist jedes Element folgendermaßen eingetragen: {Name} {Wert1} {Wert2} {Wert3} {Wert4} {Name} {Wert1} {Wert2} {Wert3} {Wert4} ... |
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:45 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz