![]() |
Namen TShape zusammensetzen
Hallo zusammen, ich habe folgendes Problem:
Ich habe unter anderem 500 Shapes (Quadrate). Der User gibt eine Startzahl ein und es wird von dieser Zahl an ein Intervall von 500 Zahlen durchlaufen. Wenn eine Primzahl gefunden wird, spielt der PC einen Ton, und das entsprechende Quadrat soll angemalt werden. Nun möchte ich wenn irgendwie möglich diese Shapes in meiner Intervall-Schleife aber allgemein ansprechen. Die Shapes heißen ja alle ShapeXXX. Und dann müsste ich doch sowas sagen können wie Shape+'i'.Brush.Color:=clmaroon; Ums kurz zu sagen, wie setze ich einen Objektnamen aus einem konstanten String und einer Integerzahl zusammen? Vielen Dank im Voraus!! |
Re: Namen TShape zusammensetzen
Herzlich willkommen in der Delphi-PRAXiS, Student81.
Warum verwendest du nicht einfach die Komponente TDrawGrid an Stelle von 500 TShapes? So könntest du die einzelnen Rechtecke einfach über ihren Index ansprechen. Freundliche Grüße vom marabu |
Re: Namen TShape zusammensetzen
Hi,
aber allgemein möglich ist das, so auf die Objekte zuzugreifen wie Student1 es wünscht -> mit FindComponent. (Schau mal in die Onlinehilfe) |
Re: Namen TShape zusammensetzen
Danke, werde das vielleicht auch mal ausprobieren. Habe jetzt noch folgende Möglichkeit gefunden, für die, die vielleicht mal das gleiche Problem haben:
Code:
TShape(FindComponent('Shape'+IntToStr(Quadratzaehler))
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:29 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