Einzelnen Beitrag anzeigen

Alexander

Registriert seit: 28. Aug 2002
Ort: Oldenburg
3.513 Beiträge
 
Turbo Delphi für .NET
 
#4

Re: MDI Anwendung: Auflistung der Children in einer Listbox

  Alt 20. Mai 2006, 19:06
So ich habe es gerade mal mit der Tag Eigenschaft der Listview probiert. Das klappt wunderbar.
Aber ich habe gerade noch ein Problem. Da es auch noch zu dem Titel meines Threads passt, poste ich es mal hier:
Also wenn ich ein Child schließe, muss das Items ja auch wieder entfernt werden. Also habe ganz einfach im Closing-Event des Fensters eine Methode im Hauptfenster aufgerufen mit:
  TMainFrm(owner).ChildClose(Self.text, Self.path); Das scheint problemlos zu klappen. Wenn ich jetzt aber in dieser Methode auf die Listview zu greife, bekomme ich die folgende Zugriffsverletzung um die Ohren geworfen:
Zitat:
Projekt SQLEdit.exe traf auf die unhandelte Exception-Klasse System.NullReferenceException mit der Meldung 'Der Objektverweis wurde nicht auf eine Objektinstanz festgelegt.'.
Mein Source:
Delphi-Quellcode:
  public
    procedure ChildClose(t, p : String);

[...]
procedure TMainFrm.ChildClose(t, p : String);
var
  i : Integer;
begin
  // Child aus Listbox entfernen
  for i:=0 to LView_Dok.Items.Count -1 do
    if (LView_Dok.Items.Item[i].Text.Equals(t) and LView_Dok.Items.Item[i].Tag.Equals(p)) then
    begin
      LView_Dok.Items.RemoveAt(i);
      break;
    end;
end;
Irgendwie komme ich damit nicht weiter. Bei Delphi mit Win32 habe ich das eigentlich öfters so gemacht
Alexander
  Mit Zitat antworten Zitat