Alle Controls auf der Groupbox disablen und dann gezielt den Button wieder enablen:
Delphi-Quellcode:
procedure EnableControlChilds(control:TWinControl; en:Boolean);
var
i : integer;
child : TControl;
begin
control.Enabled := en;
for i:=0 to control.ControlCount-1 do
begin
child := control.controls[i];
if child is TWinControl then
begin
// rekusiv !!
EnableControlChilds(TWinControl(child), en);
end;
end;
end;
EnableControlChilds(Panel1, False);
Groupbox1.Enabled := True;
Button1.Enabled := True;