循环数据集的时候 如何能获取对应的dbgrid的columns

crazy_boom 2022-06-11 21:15:56

delphi 7.0  

dbgrid1.datasource.dataset :=adoquery1;

for i:=0 to adoquery1.fields.count -1 do 
begin
  if adoquery1.fields[i].fieldname='aaaa' then 
     adoquery1.fields[i].visable :=False;
  if adoquery1.fields[i].fieldname='best' then
    dbgrid1.columns(adoquery1.fields[i].fieldname).width:=60;
   //问题就是这一句 如何在这个数据集的循环里 给对应的columns指定宽度. 上面的写法是错误的 该怎么写呢?
   //我就会再这里遍历一遍dbgrid1 找到这个字段然后指定宽度。能不遍历dbgrid直接给指定宽度吗?
end

 

...全文
98 5 打赏 收藏 举报
写回复
5 条回复
切换为时间正序
请发表友善的回复…
发表回复

只能去遍历了。使用遍历的方法了

  • 打赏
  • 举报
回复
tanqth 06-29
@crazy_boom 是的,需要遍历。
  • 举报
回复

可以设置一个grid,然后去设置grid的width

  • 打赏
  • 举报
回复

if DBGrid1.fields[i].fieldname='aaaa' then

  • 打赏
  • 举报
回复
tanqth 06-12

这个,好像只能去遍历了。columns只对应序号,不能使用NAME。
当然,还有一种办法,就是你之前就记录下那个字段对应那一列,然后直接取到使用。

  • 打赏
  • 举报
回复
相关推荐
发帖
Delphi

5124

社区成员

Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
帖子事件
创建了帖子
2022-06-11 21:15
社区公告
暂无公告