Einzelnen Beitrag anzeigen

darkstone

Registriert seit: 4. Feb 2003
26 Beiträge
 
#3
  Alt 25. Jun 2003, 09:26
Mit einer rekursiven procedure müsste das gehen - so in dieser Art:

Delphi-Quellcode:
procedure Ctrl_SetEnabledState( ACtrl: TWinControl; State: Boolean );
var
  ChildCtrl: TWinControl;
  i: Integer; // Laufvar.
begin
  // Alle Child-Controls disablen
  for i:=0 to ACtrl.ControlCount do begin
    ChildCtrl := ACtrl.Controls[i];
    if ChildCtrl is TWinControl then begin
      Ctrl_SetEnabledState( ChildCtrl, State ); // Rekursion!
    end;
  end;
  // Control disablen
  ACtrl.Enabled := State;
end;
Voraussetzung dafür ist natürlich, dass die property "Enabled" in TWinControl definiert ist - das weiss ich jetzt nicht auswendig. Aber so - oder so ähnlich - müsste es gehen.
  Mit Zitat antworten Zitat