var
qxb:boolean;
qxs:string;
i:integer;
begin
qxs:=query.fiedbyname('qxs').asstring//把权限字符串读入qxs中
for i:=1 to length(qxs) do
begin
   if qxs[i]='1' then  qxb:=true
      else qxb:=false;
begin
 case i of
0:menui.n1.enable:=qxb
1:menui.n2.enable:=qxb
......
end

解决方案 »

  1.   

    假设权限分1、2、3、4级,有4个菜单拦n01,n02,n03,n04,各菜单栏下是若干菜单条目var
      qxs:integer;
    begin
      qxs:=query['qxs']//qxs字段为整数
      case qxs of 
        1:begin
            menu1.n01.Visiabled:=True;
            menu1.n02.Visiabled:=False;
            menu1.n03.Visiabled:=False;
            menu1.n04.Visiabled:=False;
          end;
        2:begin
            menu1.n01.Visiabled:=False;
            menu1.n02.Visiabled:=True;
            menu1.n03.Visiabled:=False;
            menu1.n04.Visiabled:=False;
          end;
        3:begin
            menu1.n01.Visiabled:=False;
            menu1.n02.Visiabled:=False;
            menu1.n03.Visiabled:=True;
            menu1.n04.Visiabled:=False;
          end;
        4:begin
            menu1.n01.Visiabled:=False;
            menu1.n02.Visiabled:=False;
            menu1.n03.Visiabled:=False;
            menu1.n04.Visiabled:=True;
          end;
        0:begin//最高级别例如系统主管
            menu1.n01.Visiabled:=True;
            menu1.n02.Visiabled:=True;
            menu1.n03.Visiabled:=True;
            menu1.n04.Visiabled:=True;
          end;
        end;
    end