AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein GUI-Design mit VCL / FireMonkey / Common Controls Delphi ComboBox mit unterschiedlichen Objekten - sauber abraeumen?
Thema durchsuchen
Ansicht
Themen-Optionen

ComboBox mit unterschiedlichen Objekten - sauber abraeumen?

Offene Frage von "OldGrumpy"
Ein Thema von OldGrumpy · begonnen am 23. Feb 2007 · letzter Beitrag vom 23. Feb 2007
Antwort Antwort
Seite 3 von 3     123   
marabu

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

Re: ComboBox mit unterschiedlichen Objekten - sauber abraeum

  Alt 23. Feb 2007, 12:05
Hi Ingo,

besser so:

Delphi-Quellcode:
procedure TDemoForm.FormCreate(Sender: TObject);
begin
  with ComboBox.Items do
    AddObject('demo', TObject(TStringList));
end;

procedure TDemoForm.ButtonClick(Sender: TObject);
var
  s: TStrings;
begin
  with ComboBox.Items do
    s := TClass(Objects[0]).Create as TStrings;
  s.Add('Ingo');
  s.Free;
end;
Bei deinem Create würde, wenn denn ein "echtes" Objekt gespeichert wäre, dieses mit Create() lediglich auf den Ausgangszustand zurück gesetzt. Du musst den richtigen TypeCast einsetzen.

Freundliche Grüße
  Mit Zitat antworten Zitat
IngoD7

Registriert seit: 16. Feb 2004
464 Beiträge
 
Delphi 7 Enterprise
 
#22

Re: ComboBox mit unterschiedlichen Objekten - sauber abraeum

  Alt 23. Feb 2007, 12:31
Zitat von marabu:
Bei deinem Create würde, wenn denn ein "echtes" Objekt gespeichert wäre, dieses mit Create() lediglich auf den Ausgangszustand zurück gesetzt. Du musst den richtigen TypeCast einsetzen.
Mein Create (und nicht nur in der Variation, wie ich es angegeben hatte) funktionierte gar nicht!
Ich hatte TClass(..) as .. völlig unterschlagen, wohl weil ich solche Konstrukte noch nie verwenden musste. So geht's jedenfalls. Danke.

Back to Topic:
Damit ist aber auch noch nicht geklärt, wieso (angeblich) das AddObject (im "Problemcode" hier im Thread) Speicher verbrät.
  Mit Zitat antworten Zitat
marabu

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

Re: ComboBox mit unterschiedlichen Objekten - sauber abraeum

  Alt 23. Feb 2007, 13:31
Hallo OldGrumpy,

Zitat von OldGrumpy:
... Ich habe aber auf jeden Fall Memoryleaks die aus dem AddObject resultieren, und die sind zu gross als dass es einfach nur Pointer sein könnten. ...
ich kenne nur die eine Stelle aus deinem Code, zu der ich meinen Kommentar abgegeben habe, und dort sollte kein Speicher verloren gehen. Du kannst das leicht überprüfen, indem du eine Testanwendung aufmachst und in der nur mein Code-Beispiel verwendest. Wenn dort keine Speicherverluste auftreten, dann müssen wir den Fehler woanders suchen. Tritt er dort auch auf, dann finden wir sicher auch eine Erklärung. Teste mal, während ich meinen Stellungswechsel vollziehe.

Zitat von OldGrumpy:
... Der Editor ist zum Beispiel keine "echte" grafische Komponente mit eigenen Controls, sondern der wird vom Mainform aus mit den Controls die auf dem Mainform liegen "verdrahtet". Macht sowas Sinn? ...
Das ist zu ungenau, als dass ich es kommentieren könnte.

Freundliche Grüße
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 3 von 3     123   


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 15: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