我现在碰到这样的一个问题,请教一下高手,就是关于权限的设置问题,我用一个checklistbox里面有13个radiobutton,分另代表不同的操作权限,我想在选定权限后,‘TRUE’用‘1’代表,‘FALSE’用‘0’代表,并存于表‘permit’字段中,在此请问,
1、有怎样简单的方法一下全部的定义13个radiobutton在选的情况下为‘1’,不选的情况下为‘0’;
2、是否有简单的方法将选定的radiobutton定义后的‘0’‘1’值有序的放入表中
3、怎样的取表中的数据,并对应相关的权限
以上
最好是有完整的程序,并在此谢谢过
1、有怎样简单的方法一下全部的定义13个radiobutton在选的情况下为‘1’,不选的情况下为‘0’;
2、是否有简单的方法将选定的radiobutton定义后的‘0’‘1’值有序的放入表中
3、怎样的取表中的数据,并对应相关的权限
以上
最好是有完整的程序,并在此谢谢过
下面帮你写了两个过程,第一个是根据RadioButton状态生成字符串,第二个根据字符串内容给RadioButton.Checked赋值。procedure TForm1.Button1Click(Sender: TObject);
var
i: integer;
s: string;
begin
s := '';
for i:=1 to 13 do
begin
if FindComponent('RadioButton'+IntToStr(i)) <> nil then
begin
if TRadioButton(FindComponent('RadioButton'+IntToStr(i))).Checked then
s := s + '1,'
else
s := s + '0,';
end;
end;
s := Copy(s, 1, Length(s)-1);
ShowMessage(s);end;procedure TForm1.Button2Click(Sender: TObject);
var
sl: TStringList;
s: string;
i: integer;
begin
sl := TStringList.Create;
s := '1,1,1,1,1';
sl.DelimitedText := s;
sl.Delimiter := ',';
for i:=1 to 13 do
begin;
if FindComponent('RadioButton'+IntToStr(i)) <> nil then
begin
if s[i]='1' then
TRadioButton(FindComponent('RadioButton'+IntToStr(i))).Checked := true
else
TRadioButton(FindComponent('RadioButton'+IntToStr(i))).Checked := false;
end;
end;
FreeAndNil(sl);
end;
1,
2,
4,
8,
....分别代表某个权限,&&,||关系又好处理