AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Wie kann man ein Array leeren?

Ein Thema von CreativeMD · begonnen am 19. Jan 2012 · letzter Beitrag vom 22. Jan 2012
Antwort Antwort
Seite 2 von 3     12 3      
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#11

AW: Wie kann man ein Array leeren?

  Alt 19. Jan 2012, 19:21
Google, Sucher, erster Treffer: "delphi TObjectList"
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.537 Beiträge
 
Delphi 11 Alexandria
 
#12

AW: Wie kann man ein Array leeren?

  Alt 19. Jan 2012, 19:22
Ist das zuviel verlangt, einmal einen Blick in die Hilfe oder die DP-Suchfunktion zu werfen? Ich meine, XE 2 Architect im Profil und sich dann alles vorkauen zu lassen geht irgendwie nicht zusammen, oder?
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#13

AW: Wie kann man ein Array leeren?

  Alt 19. Jan 2012, 19:24
Oder http://www.delphipraxis.net/dp_reference.php nach TObjetList suchen.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.537 Beiträge
 
Delphi 11 Alexandria
 
#14

AW: Wie kann man ein Array leeren?

  Alt 19. Jan 2012, 19:33
Hab ich doch sogar schon verlinkt
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.116 Beiträge
 
Delphi 12 Athens
 
#15

AW: Wie kann man ein Array leeren?

  Alt 19. Jan 2012, 20:25
Ich mag die geheimen OH-Tags ... passend zur unbekannten F1-Taste.
Delphi-Referenz durchsuchenTObjectList
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
Benutzerbild von CreativeMD
CreativeMD

Registriert seit: 11. Okt 2011
127 Beiträge
 
Delphi XE2 Architect
 
#16

AW: Wie kann man ein Array leeren?

  Alt 21. Jan 2012, 10:15
Sorry aber in all diesen Links war keine einzige Antwort zu meiner Frage .
Ich habe auch schon in google gesucht.
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.537 Beiträge
 
Delphi 11 Alexandria
 
#17

AW: Wie kann man ein Array leeren?

  Alt 21. Jan 2012, 11:48
So?
Zitat:
• class Contnrs.TObjectList » [DE] [FR]
• function Contnrs.TObjectList.Add » [DE] [FR]
• constructor Contnrs.TObjectList.Create » [DE] [FR]
• destructor Contnrs.TObjectList.Destroy » [DE] [FR]
• function Contnrs.TObjectList.Extract » [DE] [FR]
• function Contnrs.TObjectList.ExtractItem » [DE] [FR]
• function Contnrs.TObjectList.FindInstanceOf » [DE] [FR]
• function Contnrs.TObjectList.First » [DE] [FR]
• function Contnrs.TObjectList.GetItem » [DE] [FR]
• function Contnrs.TObjectList.IndexOf » [DE] [FR]
• function Contnrs.TObjectList.IndexOfItem » [DE] [FR]
• procedure Contnrs.TObjectList.Insert » [DE] [FR]
• property Contnrs.TObjectList.Items » [DE] [FR]
• function Contnrs.TObjectList.Last » [DE] [FR]
• procedure Contnrs.TObjectList.Notify » [DE] [FR]
• property Contnrs.TObjectList.OwnsObjects » [DE] [FR]
• function Contnrs.TObjectList.Remove » [DE] [FR]
• function Contnrs.TObjectList.RemoveItem » [DE] [FR]
• procedure Contnrs.TObjectList.SetItem » [DE] [FR]
Da kann man sogar draufklicken (vorzugsweise jeweils unter [DE]) .
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Benutzerbild von CreativeMD
CreativeMD

Registriert seit: 11. Okt 2011
127 Beiträge
 
Delphi XE2 Architect
 
#18

AW: Wie kann man ein Array leeren?

  Alt 22. Jan 2012, 14:26
Danke ich weiß aber immer noch net.
Ich ich ein bestimmtes objekt einbinde.
Add(TButton) funktioniert net
Add(Labels[zahl]) funktioniert auch net
wie mache ich das?
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#19

AW: Wie kann man ein Array leeren?

  Alt 22. Jan 2012, 14:37
Hier die Deklaration
Delphi-Quellcode:
uses
  Contnrs;

// statt Labels : array[0..100] of TLabel;
type
  TForm1 = class( TForm )
  ..
  private
    Labels : TList;
  end;

..

implementation

..

procedure TForm1.FormCreate( Sender : TObject );
begin
  Labels := TObjectList.Create;
end;

procedure TForm1.FormDestroy( Sender : TObject );
begin
  // Alle enthaltenen Objekte (hier die Labels) werden automatisch entsorgt
  Labels.Free;
end;

procedure TForm1.Button1Click( Sender : TObject );
var
  idx : integer;
  lbl : TLabel;
begin
  for idx := 1 to 100 do
  begin
    lbl := TLabel.Create( nil ); // keinen Owner angeben!!! Die Labels-Liste kümmert sich um die Freigabe!
    lbl.Parent := Self; // oder wer auch immer
    lbl.Caption := 'Hallo';
    ..
    Labels.Add( lbl );
  end;
end;
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
Furtbichler
(Gast)

n/a Beiträge
 
#20

AW: Wie kann man ein Array leeren?

  Alt 22. Jan 2012, 14:38
Poste mal deinen Code.
Ich glaube, Du hast die 100 Label erzeugt und willst nun, das sie wieder verschwinden. Da reicht es natürlich nicht das Array oder die Liste oder die Objektliste oder was auch immer dein Container ist, zu nullen.

Um die Label zu erzeugen, instantiierst Du sie mit dem Konstruktor.
Um die Label zu entfernen, gibst Du es mit dem Destruktor frei.

Um ein Label unsichtbar zu machen, setzt Du Visible auf False oder entfernst den Text (Caption).

Der Konstruktor heißt Create, und der Destruktor heißt... Destroy.

Und weil Delphi nun mal ein wenig rumgefrickelei ist, verwendet man nicht den Destruktor direkt, sondern etwas, das viel toller ist, nämlich "Free".
Das macht das Gleiche, prüft aber vorher auf Nil.

Wenn Du das hier nicht verstanden hast, solltest Du erst einmal die grundlegenden Grundlagen von Delphi lernen.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 3     12 3      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:51 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