Hola FideRosado.
Código Delphi
[-]
function ActiveCheckBoxes(SB: TScrollBox): Integer;
var
i,j: Integer;
begin
Result := 0;
for i:= 0 to SB.ControlCount - 1 do
if SB.Controls[i] is TPanel then
for j:= 0 to TPanel(SB.Controls[i]).ControlCount-1 do
if TPanel(SB.Controls[i]).Controls[j] is TCheckBox then
Inc(Result, Integer(TCheckBox(TPanel(SB.Controls[i]).Controls[j]).Checked))
end;
Un ejemplo de uso:
Código Delphi
[-]
procedure TForm1.Button1Click(Sender: TObject);
var
n: Integer;
begin
n := ActiveCheckBoxes(ScrollBox1);
if n > 0 then
ShowMessage(Format('Hay %d casillas marcadas',[n]))
end;
Saludos