Einzelnen Beitrag anzeigen

Andreas L.
(Gast)

n/a Beiträge
 
#11

Re: Herausfinden wie viele Panels auf einen Panel liegen

  Alt 31. Mär 2006, 10:47
Habs jetzt so angepasst:

Delphi-Quellcode:
function ArrangeExPanel(Sender : TObject):Boolean;
var
 i: Integer;
 useEdit: TSpeedButton;
 useDelete: TSpeedButton;
 sl: TStringlist;
begin
if Sender.ClassType=TPanel then
 begin
  sl:=TStringList.Create;
  repeat
    sl.add((Sender as TPanel).FindComponent('ExPanel').name); //hier kommt eine zugriffsverletzung
  until (Sender as TPanel).FindComponent('ExPanel').name='';
   begin
    for i:=0 to sl.count-1 do
     begin
      useEdit:=((Sender as TPanel).FindComponent('Edit_'+sl.strings[i]) as TSpeedButton);
      useDelete:=((Sender as TPanel).FindComponent('Delete_'+sl.strings[i]) as TSpeedButton);
      useDelete:=(useDelete as TSpeedButton);
      useEdit:=(useEdit as TSpeedButton);
      useEdit.Left:=(Sender as TPanel).Width-3;
      useDelete.Left:=(Sender as TPanel).Width-87;
     end;
   end;
   sl.free;
   Result:=true;
 end
else
 begin
  Result:=false;
 end;
end;
Leider kommt hier eine Zugriffsverletzung beim Aufruf der Funktion:

sl.add((Sender as TPanel).FindComponent('ExPanel').name); //hier kommt eine zugriffsverletzung Was nun?
  Mit Zitat antworten Zitat