请看这段代码:
ADOQuery4.Close;
ADOQuery4.SQL.Clear;
s3:='select * from vesselsconditioncode ';
ADOQuery4.SQL.Add(s3);
ADOQuery4.Open;
DBGrid3.Columns[1].PickList.Clear;
adoQuery4.First;
while not adoQuery4.Eof do begin
DBGrid3.Columns[1].PickList.Add(adoQuery4.Fields[0].AsString+' '+adoQuery4.Fields[1].AsString);
adoQuery4.Next;
end;
我在dbgrid里做下拉框,该下拉空有两列,一列是序号,另一列是代码,
我明明选择的序号1,可是显示在dbgrid中却是1和一个空格。也就是说显示在序号列里为两位,为什么呢?请指教!
ADOQuery4.Close;
ADOQuery4.SQL.Clear;
s3:='select * from vesselsconditioncode ';
ADOQuery4.SQL.Add(s3);
ADOQuery4.Open;
DBGrid3.Columns[1].PickList.Clear;
adoQuery4.First;
while not adoQuery4.Eof do begin
DBGrid3.Columns[1].PickList.Add(adoQuery4.Fields[0].AsString+' '+adoQuery4.Fields[1].AsString);
adoQuery4.Next;
end;
我在dbgrid里做下拉框,该下拉空有两列,一列是序号,另一列是代码,
我明明选择的序号1,可是显示在dbgrid中却是1和一个空格。也就是说显示在序号列里为两位,为什么呢?请指教!
是不是adoQuery4.Fields[1].AsString为空,中间那个' '的问题
...
adoQuery4.First;
while not adoQuery4.Eof do begin
ShowMessage(adoQuery4.Fields[0].AsString+' '+adoQuery4.Fields[1].AsString);//显示一下字符串试试看嘛
DBGrid3.Columns[1].PickList.Add(adoQuery4.Fields[0].AsString+' '+adoQuery4.Fields[1].AsString);
adoQuery4.Next
...
比如:下拉框中是1Prog,结果显示在该列中为1P。其中1是第一个字段的,prog是第二个字段的。