AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

Listenindex Überschreitet das Maximum (3)

Ein Thema von Demon666 · begonnen am 26. Jun 2010 · letzter Beitrag vom 27. Jun 2010
Antwort Antwort
Benutzerbild von Matze
Matze
(Co-Admin)

Registriert seit: 7. Jul 2003
Ort: Schwabenländle
14.929 Beiträge
 
Turbo Delphi für Win32
 
#1

AW: Listenindex Überschreitet das Maximum (3)

  Alt 26. Jun 2010, 21:02
Vergleiche auf "true" und "false" sollten auch vermieden werden, speziell der auf "true" (s. hier).

Rufst du die Prozedur "DarstellungAnpassen" denn beim Beenden auf (OnClose o.ä.)?
Ich vermute, du greifst auf "Formoptionen" zu, was bereits freigegeben wurde.
  Mit Zitat antworten Zitat
Demon666

Registriert seit: 16. Jun 2010
21 Beiträge
 
Delphi 7 Personal
 
#2

AW: Listenindex Überschreitet das Maximum (3)

  Alt 26. Jun 2010, 21:25
Also beim schließen greif ich nicht dauf zu. Was meinst du mit "freigegeben"? (Bin Delphi neuling)
Simon
  Mit Zitat antworten Zitat
Benutzerbild von Matze
Matze
(Co-Admin)

Registriert seit: 7. Jul 2003
Ort: Schwabenländle
14.929 Beiträge
 
Turbo Delphi für Win32
 
#3

AW: Listenindex Überschreitet das Maximum (3)

  Alt 26. Jun 2010, 21:27
Beim Beenden gibt das Programm den reservierten Speicher frei, den es beansprucht hat. Dazu zählen auch Unterformulare.

Daher vermute ich, dass das Unterformular nicht mehr existiert, du aber beim Beenden darauf zugreifst.

Hast du denn etwas im OnClose oder OnCloseQuery stehen?
  Mit Zitat antworten Zitat
Demon666

Registriert seit: 16. Jun 2010
21 Beiträge
 
Delphi 7 Personal
 
#4

AW: Listenindex Überschreitet das Maximum (3)

  Alt 26. Jun 2010, 21:38
nein, aber ich hab ne prozedur in der FormOptionen geschlossen wird:
Delphi-Quellcode:
procedure TFormOptionen.BtOKClick(Sender: TObject);
var save: Tstringlist; //hier wird gespeichert. reihenfolge: checkbox, buttonhöhe,buttonbreite,Radiogroup"Symbol",RadioGroup"SymbolPosition";
begin
  save:=tstringlist.create;
  if cbleiste.checked then
    save.add('t')
  else
    save.Add('f'); //wenn die checkbox ein häckchen hat ist die erste zeile von save=t ansonsten ist sie f;


  if edbthoehe.text='then
     edbthoehe.value:=0;

  if edbtbreite.text='then
    edbtbreite.Value:=0;

  save.Add(inttostr(edbthoehe.Value)); //speicert die buttonhöhe;
  save.Add(inttostr(edbtbreite.value)); //speichert die buttonbreite;
  save.Add(inttostr(RGSymbol.ItemIndex));
  save.Add(inttostr(RGSymbolPosition.ItemIndex));
  save.SaveToFile('save.txt');
  FormOptionen.Close;
end;
Simon
  Mit Zitat antworten Zitat
Benutzerbild von Matze
Matze
(Co-Admin)

Registriert seit: 7. Jul 2003
Ort: Schwabenländle
14.929 Beiträge
 
Turbo Delphi für Win32
 
#5

AW: Listenindex Überschreitet das Maximum (3)

  Alt 26. Jun 2010, 21:44
Hm, also so kann ich dir leider nicht helfen, sorry.

Aber wo ich deinen Code nochmal ansehe, entstehen u.U. Speicherlecks (sog. Memory Leaks).
Du erzeugst eine StringList und gibst dessen Speicher nicht mehr frei.
Richtig macht man das so (bei allen Objekten, die du mit ".Create" erstellst):

Delphi-Quellcode:
save := TStringlist.Create;
try
  // hier dein Code, in dem du auf "save" zugreifst
finally
  // Speicher freigeben
  FreeAndNil(save); // oder: save.Free;
end;
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#6

AW: Listenindex Überschreitet das Maximum (3)

  Alt 26. Jun 2010, 21:56
Mache bitte für den neuen Fehler ein eigenes Thema auf. Denn der neue Fehler hat rein gar nichts mit dem vorherigen Fehler zu tun.
Im neuen Thema kannst du ja auf den Quelltext von diesem Beitrag verlinken.
Aber so bringt es für die Zukunft recht wenig weil andere mit gleichem Problem die zweite Frage innerhalb dieser ersten Frage kaum finden werden.
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

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

AW: Listenindex Überschreitet das Maximum (3)

  Alt 27. Jun 2010, 06:40
Blos um das nochmal zu sagen.
Debuggen ist eine Wunderwaffe.
Damit bekommt man auch gleich mit raus in welcher Zeile der Fehler auftritt, was die Fehlersuche stark vereinfacht.
Ein Therapeut entspricht 1024 Gigapeut.
  Mit Zitat antworten Zitat
Antwort Antwort

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 09:16 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