我正在使用带有许多页面的 TAdvToolBarPager(AdvPage1、AdvPage2、AdvPage3 ...)。每个页面包含许多编辑、导航器等。基于用户权限,我想约束属性,即对于 ADMIN,我想显示所有页面 (1,2,3) 但对于用户,我只想显示页面 (1,2) 或 (1)。
我可以使用下面给出的代码禁用所有编辑、导航器。有人可以帮助我如何根据约束/任何其他替代方法在 TAdvToolBarPager 中设置页面。提前致谢!
Procedure SetForm(Form: TForm; enabled: Boolean);
var PropInfo : PPropInfo;
i : Integer;
begin
for i := 0 to Pred(Form.ComponentCount) do
begin
if (Form.Components[i] is TDBEdit) or (Form.Components[i] is DBNavigator) then
begin
PropInfo := GetPropInfo(Form.Components[i].ClassInfo, 'Enabled');
if PropInfo <> nil then
SetOrdProp(Form.Components[i], PropInfo, Ord(enabled));
end;
end;
end;