Delphi-PRAXiS
Seite 2 von 3     12 3      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi dynamisch erzeugte Komponenten numbenennen? (https://www.delphipraxis.net/77796-dynamisch-erzeugte-komponenten-numbenennen.html)

smart 25. Sep 2006 09:01

Re: dynamisch erzeugte Komponenten numbenennen?
 
Zitat:

Zitat von hoika
Hallo oki,

unabhängig von den Tips weiter oben (die sind ja richtig ;) )
Warum führst du keine List der Bilder,
für das abschliessen brauchst du das doch eh, oder ?
Stichwort Score.

Heiko

Hallo hoika!

Nein, da kann ich einfach die Treffer zählen!

Gruß
Heike

smart 25. Sep 2006 09:06

Re: dynamisch erzeugte Komponenten numbenennen?
 
Zitat:

Zitat von oki
das Bsp. ist sogar fast aus der OH abgekupfert. Suche dort einfach unter ComponentCount. Achte hier nur darauf, dass in diesem Bsp. im Form1 gesucht wird. Wenn sich deine Images auf einer anderen komponente befinden (Owner), dann mußt du natürlich dort suchen.

gruß oki

Hallo oki!

Das ist eine gute Idee. Das klappt auch prima. Vielen Dank.

Gruß
Heike

smart 25. Sep 2006 09:10

Re: dynamisch erzeugte Komponenten numbenennen?
 
Zitat:

Zitat von TeronG
Guten morgen smart!
Allerdings werden dann auch wirklich alle TImage's gelöscht!
Wenn du das nicht willst könntst du deinen Bildern einen Namen geben DingensXXX und dann gugn, ob das TImage mit Dingens beginnt ... :gruebel:

Guten morgen TeronG!

Ich habe das jetzt so gelöst, dass ich erst alle lösche und dann, die ich noch brauche, einfach neu erzeuge.

Gruß
Heike

sakura 25. Sep 2006 09:25

Re: dynamisch erzeugte Komponenten numbenennen?
 
@Heike: Ein Post hätte auch gereicht ;)

...:cat:...

smart 25. Sep 2006 09:27

Re: dynamisch erzeugte Komponenten numbenennen?
 
Zitat:

Zitat von sakura
@Heike: Ein Post hätte auch gereicht ;)

...:cat:...

OK, da hast Du Recht. Ich werde mich bessern ;-)

Gruß
Heike

TeronG 25. Sep 2006 09:27

Re: dynamisch erzeugte Komponenten numbenennen?
 
Zitat:

Zitat von sakura
@Heike: Ein Post hätte auch gereicht ;)

:gruebel:
Wie soll man denn sonnst seinen Beitrags-Zähler hoch bekommen? :P /Duck

Elvis 25. Sep 2006 09:31

Re: dynamisch erzeugte Komponenten numbenennen?
 
Du wirfst deine Bildchens beim Erzeugen einfach in eine Liste und kannst die dann einfach abarbeiten. Über den namen auf ein Control/Komponente zu gehen ist ziemlich ... nunja .. krass. ;-)

Falls du auf der Spielfläche tatsächlich nur deine Bilder hast kannst du die Controls rückwärts durchgehen und sie einem nach dem anderen freigeben (sollten dann autom. aus ihrem dem Parent verschwinden).

oki 25. Sep 2006 09:34

Re: dynamisch erzeugte Komponenten numbenennen?
 
Hi smart,

du kannst immer noch die Eigenschaft Tag dafür nutzen, welche Images gelöscht werden sollen und welche nicht. da du deine images aber zur Laufzeit erzeugst, kannst du dir auch eine eigene Klasse schreiben. Dort kannst du dann ganz einfach deine Eigenschaften einfügen und diese für die abfrage verwenden.
Delphi-Quellcode:
type
  TShootingImage = class(TImage)
  public
    property Deletable : Boolean read FDeletable write FDeletable;
  end;
Alle Images, die nicht gelöscht werden dürfen, kannst du so markieren:
Delphi-Quellcode:
  MyshootingImage.Deletable := False;
und beim löschen folgendes:
Delphi-Quellcode:
procedure TForm1.DeleteImages;
var temp : TComponent;
    I : Integer;
begin
  for I := ComponentCount - 1 downto 0 do
  begin
    Temp := Components[I];
    if (Temp is TShootingImage) then
    begin
      IF (Temp as TShootingImage).Deletable then Temp.Free;
    end;
  end;
end;
Benötigst du weitere Eigenschaften (darf abgeschossen werden; beim erasten mal, zweiten mal ...) so implementiere sie einfach.

gruß oki

smart 25. Sep 2006 09:42

Re: dynamisch erzeugte Komponenten numbenennen?
 
Zitat:

Zitat von TeronG
Wie soll man denn sonnst seinen Beitrags-Zähler hoch bekommen? :P /Duck

Das wird nicht pro Nachricht, sondern pro Themen gezählt :-)

Gruß
Heike

smart 25. Sep 2006 09:53

Re: dynamisch erzeugte Komponenten numbenennen?
 
Zitat:

Zitat von oki
kannst du dir auch eine eigene Klasse schreiben. Dort kannst du dann ganz einfach deine Eigenschaften einfügen und

Hallo oki,

eine sehr saubere Lösung. Ich muss zugeben, dass ich noch nicht viel mit eigenen Klassen programmiert habe. Ich teste mal Dein Vorschlag. Sieht ja einfach aus. ;-)

Gruß
Heike


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:58 Uhr.
Seite 2 von 3     12 3      

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