2,496
社区成员
发帖
与我相关
我的任务
分享
function GetNum(Popnum: string; Position: Byte): Boolean;
begin
if Copy(Popnum, Position, 1) = '1' then
Result := True
else
Result := False;
end;
if not GetNum(permission, 1) then
begin
……
end;
preOrder(m,0);
function preOrder(sender:TObject;no:integer):integer;
var
node:TMenuItem;
root:TMainMenu;
i:integer;
begin//
result:=no;
if(sender is TMainMenu) then begin
root:=sender as TMainMenu;
if root<>nil then
for i:=0 to root.Items.Count-1 do begin
inc(result);
result:=preOrder(root.Items[i],result);
end;
end
else begin
node:=sender as TMenuItem;
doSomeThing(node,'1000111110100',no);
if node<>nil then begin
for i:=0 to node.Count-1 do begin
inc(no);
result:=preOrder(node.Items[i],no);
end;
end;
end;
end;
procedure doSomeThing(node:TMenuItem;right:string;no:integer);
begin //
node.Enabled:=right[no]='1';
end;