Einzelnen Beitrag anzeigen

Benutzerbild von bernau
bernau

Registriert seit: 1. Dez 2004
Ort: Köln
1.268 Beiträge
 
Delphi 11 Alexandria
 
#4

Re: Komponente existiert bereits beim Öffnen des Projekts

  Alt 15. Sep 2006, 10:53
Ich kenne diese Komponente nicht, aber:

Zitat von MOCI:
Code:
if not ViewVorhanden then begin
    //Löschen aller Views
    I := Self.ViewCount;
    for J := 0 to Self.ViewCount - 1 do
      Self.Views[0].Free;

Warum definierst du "I" wenn du diese Variable nicht verwendest ? (Nur interessehalber)

Warum Self.Views[0].Free in einer Schleife? Ich gehe davon aus, das Views in irgendeiner Form eine Objectliste ist. Mit free gibst du das Objekt frei aber views.count wird doch nicht reduziert. Schau doch mal was views.count nach dem Durchlauf der Schleife sagt.

Oder sollte es vieleicht so heissen:

Code:

 for J := 0 to Self.ViewCount - 1 do
    Self.Views[J].Free;
 Self.Views.clear;
Wie gesagt. Ich kenne die Komponente nicht. Ich mutmasse nur.

Zitat von MOCI:
Code:
 
    NeuerView.Name := Self.Name + 'BandedTableView1';
Hier entsteht die Fehlermedung. Ein Anzeichen dafür, daß die Komponente mit dem Namen "BandedTableView1" in deiner Schleife, die vorher durchgelaufen ist, nicht freigegeben wurde.


Gerd
  Mit Zitat antworten Zitat