Einzelnen Beitrag anzeigen

Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.116 Beiträge
 
Delphi 11 Alexandria
 
#5

Re: Datensatz laden - ComboBox bleibt beim Ladevorgang offen

  Alt 27. Jan 2007, 15:25
Moin Christian,

das hat zwar mit Deinem Problem nichts zu tun, aber:

So wie Du das try/finally angewendet hast, ist es relativ sinnlos.
Egal ob die Datei erfolgreich geladen werden konnte oder nicht: Sie wird verarbeitet...

Besser, Du schreibst das try hinter das BeginUpdate, und kapselst das EndUpdate in finally/end, um sicherzustellen, dass der Listview auch dann wieder etwas anzeigt, wenn bei der Verarbeitung der Datei etwas schiefgegangen ist.

Eigentlich handelt es ich bei try/finally um den, sogenannten, Resourcenschutzblock, der dafür sorgen soll, dass belegte Resourcen auch dann wieder freigegeben werden, wenn bei deren Verarbeitung ein Fehler aufgetreten ist.

Delphi-Quellcode:
// Resource belegen
sl := TStringList.Create;
try
  // mit der Resource arbeiten
finally
  // Resource freigeben
  sl.free;
end;

// oder auch

dwHandle := CreateFile(....);
if dwHandle <> INVALID_HANDLE_VALUE then begin
  try
    // mit der Datei arbeiten
  finally
    CloseHandle(dwHandle);
  end;
end;
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat