Delphi アプリに DevExpress VCL リボンがあります。ときどきアプリが更新を行っています。その間、ユーザーが何もしないようにする必要があるため、Delphi アプリのすべてのコントロールを無効にできるようにしたいと考えています。リボンが表示されますが、各タブのコントロールの数が機能しません
ComponentCount は、どのようにしても 0 を返しますが、コントロールは表示されます。私のテストコードは次のようになります。
procedure TfrmMain.RibbonDisable(var aMessage: TMessage);
var
i: integer;
begin
try
for i := 0 to ribMain.TabCount - 1 do
begin
ribMain.Tabs.Items[i].Active := True;
ShowMessage(IntToStr(ribMain.ActiveTab.ComponentCount));
end;
except
on E:exception do
Logfile.Error('frmMain.RibbonDisable: ' + E.Message);
end;
end;