AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi Combobox mit AddObject - Speicher automatisch freigeben
Thema durchsuchen
Ansicht
Themen-Optionen

Combobox mit AddObject - Speicher automatisch freigeben

Ein Thema von backdraft · begonnen am 20. Feb 2007 · letzter Beitrag vom 23. Feb 2007
Antwort Antwort
Seite 2 von 2     12   
backdraft

Registriert seit: 19. Apr 2005
Ort: Hückeswagen
335 Beiträge
 
Delphi 11 Alexandria
 
#11

Re: Combobox mit AddObject - Speicher automatisch freigeben

  Alt 22. Feb 2007, 10:33
Zitat von IngoD7:
Offen gestanden ergeben sich für mich von einem Posting von dir zum nächsten zuviele Abweichungen. Das mit der Ide (also Entwurfszeit) ist ja nun völlig neu.

Allerdings möchte ich mich jetzt auch langsam ausklinken, weil ich heute sehr lange an dieser Sache herumgetestet habe und nun hören muss, dass alles nicht der wirklichen Umsetzung entsprach. Sorry.
Hallo, zwischen dem Listing und meinem Quellcode weicht nix ab, ausser, dass ich die Komponente in der IDE registriert habe, und dann via IDE auf die Form gelegt habe.
Da dieses für jemand anders immer mehr Aufwand ist, habe ich die Kompoennte einfach mit in die Unit gelegt und dynamisch angelegt.

Das ändert aber nichts an der Tatsache, dass Speicherlöcher bleiben, egal ob die IDE den Free macht, oder ich ihn am Ende aufrufe. Die Objekte werden nicht freigeben.

Danke trotzdem für die Hilfe, ich lasse es jetzt erstmal auf TComponent als Basisklasse um nicht weiter Speicherlöcher zu verursachen.

Eigentlich muss doch jeder, der schonmal mit einer TComboBox + AddObject gearbeitet hat das selbe Problem haben, wenn die Komponente das Free selbst übernehmen soll.

Grüße Oliver
Oliver
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#12

Re: Combobox mit AddObject - Speicher automatisch freigeben

  Alt 23. Feb 2007, 14:49
Hallo Oliver,

Zitat von backdraft:
... Eigentlich muss doch jeder, der schonmal mit einer TComboBox + AddObject gearbeitet hat das selbe Problem haben, wenn die Komponente das Free selbst übernehmen soll. ...
ja und nein.

Der richtige Ort für die Zerstörung der Objekte ist nach meiner Meinung nicht die ComboBox-Komponente, sondern die über GetItemsClass.Create() erzeugte Liste "Items". Leider ist in D7 die Basisklasse TComboBoxStrings nicht öffentlich, sonst könnte ich in einer abgeleiteten Klasse die Methode Delete() überschreiben und in Abhängigkeit von einer noch einzuführenden property OwnsObjects eine allgemeine Lösung schaffen.

Grüße vom marabu
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


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 05:12 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