窗体FORM1
ADO联接
SQL2000
数据库表结构如下: 表名:QX
YONGHU MOUKUAI QUANXIAN
ZJF 客户资料 1
ZJF 商品资料 0
窗体上有一个POPUPMENU1
默认情况下,假设POPUPMENU1.N1.CAPTION:='客户资料'
POPUPMENU1.N1.VISIBLE:=TRUE;
POPUPMENU1.N2.CAPTION:='商品资料'
POPUPMENU1.N2.VISIBLE:=TRUE;
问题:如何做到在FORM1显示的情况下,跟据QX表的QUANXIAN字段来判断N1及N2的VISIBLE,如:QUANXIAN为0,VISIBLE:=FALSE;
ADO联接
SQL2000
数据库表结构如下: 表名:QX
YONGHU MOUKUAI QUANXIAN
ZJF 客户资料 1
ZJF 商品资料 0
窗体上有一个POPUPMENU1
默认情况下,假设POPUPMENU1.N1.CAPTION:='客户资料'
POPUPMENU1.N1.VISIBLE:=TRUE;
POPUPMENU1.N2.CAPTION:='商品资料'
POPUPMENU1.N2.VISIBLE:=TRUE;
问题:如何做到在FORM1显示的情况下,跟据QX表的QUANXIAN字段来判断N1及N2的VISIBLE,如:QUANXIAN为0,VISIBLE:=FALSE;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('select MOUKUAI,QUANXIAN from QX where YONGHU = ''ZJF''');
ADOQuery1.Open;
ADOQuery1.First;
while not ADOQuery1.Eof do
begin
if Trim(ADOQuery1.FieldValues['MOUKUAI']) = '客户资料' then
begin
if Trim(ADOQuery1.FieldValues['QUANXIAN']) = '0' then
N1.Visible := False
else
N1.Visible := True;
end
else if Trim(ADOQuery1.FieldValues['MOUKUAI']) = '商品资料' then
begin
if Trim(ADOQuery1.FieldValues['QUANXIAN']) = '0' then
N2.Visible := False
else
N2.Visible := True;
end;
end;
begin
for i:= 0 to PopupMenu1.Items.Count-1 do
begin
if Trim(PopupMenu1.Items[i].Caption) = Trim(ADOQuery1.FieldValues['MOUKUAI']) then
begin
if Trim(ADOQuery1.FieldValues['QUANXIAN']) = '0' then
PopupMenu1.Items[i].Enabled := False
else
PopupMenu1.Items[i].Enabled := True;
break;
end;
end;
ADOQuery1.Next;
end;