Einzelnen Beitrag anzeigen

Strahlex

Registriert seit: 30. Jun 2007
87 Beiträge
 
Delphi 2005 Personal
 
#1

Problem mit zusätzlicher Panel-Komponente

  Alt 27. Sep 2007, 19:43
Ich habe in meinem Projekt 50 Panels die ich gleichzeitig umfärbe. Das mache ich mittels dieser GetObjectByName:
Delphi-Quellcode:
function tform1.GetObjectByName(ctrlName: string): TObject;
  var
      i: Integer;
  begin
      Result := nil;
      for i := 0 to form1.ComponentCount -1 do
      begin
          if frmEditor.Components[i].Name = ctrlName then
          begin
              Result := frmEditor.Components[i];
              break;
          end;
      end;
      for i := 0 to form1.ControlCount -1 do
      begin
          if form1.Controls[i].Name = ctrlName then
          begin
              Result := form1.Controls[i];
              break;
          end;
      end;
  end;
Mein Problem ist das ich die Panels durch die Komponente TIASemiPanel ersetzen will, das ist eine von TPanel abgeleitete Komponete. Wenn ich GetObjectByName für diese Komponente ausführe erhalte ich eine Zugriffsverletzung.

Desahlb meine Frage:
Kann man zum Beispiel für alle Komponeten eines Typs gleichzeitig eine Eigenschaft einstellen? Oder gibt es andere Lösung?
  Mit Zitat antworten Zitat