AGB  ·  Datenschutz  ·  Impressum  







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

For each in Delphi

Ein Thema von EWeiss · begonnen am 25. Aug 2012 · letzter Beitrag vom 25. Aug 2012
 
Benutzerbild von himitsu
himitsu

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

AW: For each in Delphi

  Alt 25. Aug 2012, 03:26
Der Sprung ist nicht wirklich in das Controls.DisplayButton(TClsButtonInfo(oButton)); , sondern ins "implizite" Ende der Schleife (end; ) und da es kein End gibt, wird die Position halt in der Zeile des vorhergehenden Befehls angezeigt.

Delphi-Quellcode:
for oButton in goProgBar do
begin
  if oButton is TClsButtonInfo then
  begin
    Controls.DisplayButton( TClsButtonInfo( oButton ) );
  end;
end;
Denn der Code für die For-Schleife befindet sich nicht nur am Anfang der Schleife, sondern auch teilweise danach.

Zitat:
Dann ist halt kein Button der Klasse TClsButtonInfo in der Komponentenliste.
For-In bei einem TComponent durchläuft alle "Components", also die Ownerbeziehungen, da hierfür ein entsprechender "Enumerator" implementiert wurde.

Wenn der Button über den FormDesigner erstellt und aus der DFM geladen wurde, dann ist sein Owner "immer" die Form.
Die Beziehungen was wo dargestellt wird, werden aber über den Parent und nicht über den Owner geregelt.


Will man was Anderes per For-In durchlaufen, dann braucht man einen anderen und eventuell selbst erstellten Enumerator.
Ein Therapeut entspricht 1024 Gigapeut.

Geändert von himitsu (25. Aug 2012 um 03:32 Uhr)
  Mit Zitat antworten Zitat
 


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 08:27 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